Джанго: Лучшая практика для реализации CRUD за пределами contrib.admin - PullRequest
9 голосов
/ 25 июня 2009

В настоящее время я занимаюсь разработкой проекта блога с использованием модели Post, которая будет использоваться несколькими авторами.

Я хочу создать интерфейс панели администратора / панели управления, где каждый автор сообщения может просматривать список сообщений, созданный автором (чтобы он не видел сообщение, созданное другими авторами), редактировать и многократно удалять им.

Допустимый вариант использования для администратора django? сказал, что:

админ Django не подходит для индивидуальные профили пользователей, каждый пользователь сможет видеть и редактировать все другие профили пользователей. Это подходит больше для администратора, который должен управлять всеми пользователями одновременно.

Это означает, что должна быть создана новая система CRUD - вне интерфейса contrib.admin. Таким образом, вопрос заключается в том, существует ли какой-либо существующий метод / способ реализации CRUD вне системы contrib.admin? или что мне нужно изучать / использовать? как я могу реализовать это красиво (минимум усилий)?

Заранее спасибо:)

Ответы [ 4 ]

10 голосов
/ 25 июня 2009

Вам захочется взглянуть на общие формы создания / обновления Django . Это не администратор, но его довольно легко реализовать.

9 голосов
/ 25 июня 2009

Это довольно легко сделать, настроив администратора Django. Если это единственная причина отказа от contrib.admin, то, возможно, вы захотите зайти в Google за некоторыми недавними статьями по настройке администратора, прежде чем продолжать и выбросить ребенка с водой.

Я нашел несколько вероятных кандидатов:

и вообще: http://www.ibm.com/developerworks/opensource/library/os-django-admin/index.html

(обратите внимание, что существовал старый метод, использующий локальный взлом потоков. Это больше не нужно, поскольку есть более эффективные способы сделать это. Упоминание об этом является верным признаком того, что статья устарела.)

4 голосов
/ 05 марта 2012

Проверьте это приложение: https://github.com/05bit/django-smarter.

Это еще недостаточно хорошо документировано, но я уже использовал его в нескольких проектах.

0 голосов
/ 18 февраля 2012

В Django 1.3 «общие представления» (формы CRUD) изменены на классовые. Смотрите здесь .

...