我正在嘗試在Django中編寫一個簡單的CRM應用程序;部分是作爲學習練習,部分作爲內部使用。我應該修改/擴展管理界面,還是編寫我自己的CRUD視圖/模板?
我的模式稍微複雜一些,因爲它只有一個Contact模型(包括家庭電話,工作電話,家庭電子郵件等),我已經剝離了Cntact模型以及Phone模型,Email模型等。,一個ForeignKey指向一個聯繫人。關鍵是讓聯繫人擁有任意數量的電話號碼,電子郵件地址等。很簡單,對吧?
我有一些工作視圖和用於顯示數據的模板 - 沒有問題。在admin.py中只有非常少量的戳記,我有一個這樣的......設置了8個不同的TabularInline,並且管理界面用於創建和編輯數據......但它的可用性卻很醜陋,當然也沒有任何權限或任何概念。我也不是一個擁有完全不同的界面來顯示和搜索數據的粉絲,而不是編輯和添加聯繫人的粉絲......我希望儘可能多的內聯,以便我可以搜索名字,查看記錄,點擊「添加註釋」,彈出一個表單,填寫詳細信息,點擊提交,完成後,所有的AJAXy善良,所以沒有頁面重新加載。
問題:我是否應該修改管理界面以嘗試使其適用於面向用戶的應用程序?如果是這樣,任何人都可以指向我一個很好的指南或例子,其中有人已經真正改變了管理界面以使其適用於面向用戶的CRUD操作?
或者我應該繼續寫下我自己的CRUD視圖嗎?如果是這樣,任何人都可以指向我一個很好的指南或例子,其中有人編寫了自定義CRUD視圖,可以與很多ForeignKeys和inline一起工作?理想情況下,我需要一個表單,顯示單個聯繫人,所有電子郵件記錄,以及添加新電子郵件記錄的空白表單,以及添加更多空白表單的按鈕,以及電話記錄和空白表單等等。所有8個相關模型。
(或者,我想這一切都錯了嗎?任何意見讚賞。)
謝謝你;正是我在尋找的那種答案。不幸的是,我不知道如何去做這件事。 :)文件有點輕,我想我應該只是通過編碼... – 2011-04-01 02:38:51
沒有關於這樣做的文檔,因爲它不完全是它的目的。 – ojii 2011-04-01 08:11:47
+1我做同樣的事情將管理類掛鉤到我自己的url映射方案中。 Django的管理員內置了很多內容 - 驗證,級聯刪除,身份驗證等等。我會盡量記得在週一重新開始工作時發佈一些方法和代碼片段。 – JCotton 2011-04-02 04:39:20