2009-06-24 8 views
9

В настоящее время я разрабатываю проект в блоге с использованием модели Post, которая будет использоваться несколькими авторами.Django: Лучшая практика для реализации CRUD за пределами contrib.admin

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

Valid use case for django admin? сказал, что:

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

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

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

ответ

9

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

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

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

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

+0

Спасибо Энди! Это именно то, что я ищу :) И вы, и Харпер предоставили мне отличные ответы :) Тогда я попытаюсь сыграть с запросом администратора. Последнее, что меня озадачило, это множественное удаление в админе CRUD. Но я думаю, это будет другая история, хе-хе. Спасибо! –

+0

Множество удаленных и других пакетных действий идут с Django 1.1 –

10

Вы хотите посмотреть на Django generic create/update forms. Это не админ, но его довольно легко реализовать.

+0

спасибо! Я буду экспериментировать с этим :) –

0

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