Я пытаюсь написать простое приложение CRM в Django; частично как учебное упражнение и частично для домашнего использования.
Моя схема немного сложна, так как, скорее, она имеет одну модель Контакта (с домашним телефоном, рабочим телефоном, домашней электронной почтой и т. Д.), Я сократил модель Cntact, а также модель телефона, модель электронной почты и т. Д. , с ForeignKey, указывающим назад на Контакт. Смысл в том, чтобы у контактов было произвольное количество телефонных номеров, адресов электронной почты и т. Д. Просто, верно?
У меня есть несколько рабочих представлений и шаблонов для отображения данных - никаких проблем там нет. И только с очень небольшим количеством тычков в admin.py у меня есть гм ... восемь различных TabularInlines, и интерфейс администратора работает для создания и редактирования данных ... но это уродливо и неуклюже до такой степени непригодности и, конечно, нет концепции разрешений или чего-то еще. Я также не очень люблю иметь совершенно другой интерфейс для отображения и поиска в данных, чем для редактирования и добавления контактов ... Я бы хотел, чтобы как можно больше было сделано в строке, чтобы я мог искать имя, посмотрите на запись, нажмите «добавить заметку», получите всплывающую форму, заполните детали, нажмите «отправить» и все готово, все с AJAXy совершенством, так что нет перезагрузок страницы.
Вопрос: Должен ли я отключить изменение интерфейса администратора, чтобы попытаться сделать его пригодным для использования в приложении, ориентированном на пользователя? И если да, может ли кто-нибудь указать мне хорошее руководство или пример, где кто-то действительно изменил интерфейс администратора, чтобы он работал для пользовательских операций CRUD?
Или я должен просто пойти дальше и написать свои собственные представления CRUD? И если да, может ли кто-нибудь указать мне хорошее руководство или пример, где кто-то написал пользовательские представления CRUD, которые работают с большим количеством ForeignKeys и inline? В идеале мне нужна форма, которая отображает один контакт, все его записи электронной почты, а также пустую форму для добавления новой записи электронной почты, плюс кнопку для добавления дополнительных пустых форм, плюс записи его телефона, плюс пустую форму и т. Д. Для все 8 моих связанных моделей.
(Или я все об этом думаю неправильно? Любой совет приветствуется.)