2015-04-01 3 views
-1

Im действительно смущенно о том, что все, что мне нужно рассмотреть, для создания приложения django с почти аналогичной функциональностью для своего собственного администратора. На странице индекса следует развернуть список моделей, к которым пользователь имеет доступ, чтобы изменить или создать ... почти так же, как при установке admin.site.register (MyModel), но с ограничением разрешений. Я не уверен, как мне разрешить ckeck-разрешения и показать 1, 2 или многие «ModelAdmis» на моей главной странице. Кстати администратора пользователи перенаправляются на главную страницу администратора, не-админы перейти на мою страницуСоздайте приложение администратора как django

+0

Пожалуйста, после того, что вы уже пробовали самостоятельно, чтобы решите эту проблему. SO - это место, где вы можете получить помощь в том, где вы застряли, и вам не нужен код других людей. – Charlie

+0

Я еще ничего не пытался; есть так много вещей, чтобы рассмотреть; исходный код администратора для меня немного сложный, я с нетерпением жду, чтобы разрешить «ModelAdmins» для определенного пользователя. Должен быть какой-то объект django для реализации интерфейса индексной страницы для моделей, похожих на один из администраторов ... im говорит о [Model] [create] [change] для evety model, у пользователя есть разрешение на администрирование (создание, изменение o оба) –

+0

Вы пробовали посмотреть [это] (http://stackoverflow.com/questions/6310983/django-admin-specific-user-admin-content) или это [это] (http: //reinout.vanrees .org/блог/2011/09/30/Джанго-админ-filtering.html)? Если кто-то из них не имеет смысла, я могу попытаться объяснить. – Charlie

ответ

0

Перед тем, как рассмотреть вопрос о создании Джанго администратора с нуля, вы должны прочитать ответы на этот вопрос Django Admin app or roll my own?

Я не мог найти любой ресурс о том, как создать Джанго администратор с нуля, но вот то, что вы должны сделать, если это ваш первый раз, перекрывая функциональность фреймворки (по моему скромному мнению):

  1. Понимать и убедитесь, что вы знакомы с приложение администратора django
    Начало работы с документами https://docs.djangoproject.com/en/1.7/#the-admin
  2. Направляйтесь к исходному коду приложения администратора django, чтобы вы могли начать чтение внутренних функций, которые вы хотите реализовать/переопределить в своем новом приложении администратора.
    исходный код можно найти здесь https://github.com/django/django/tree/master/django/contrib/admin
    (это может включать в себя чтение другого приложения исходный код тоже)

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

пример того, как это может пойти можно найти в этом qestion:
How to override Django admin's views?

0

Если вы создаете что-то новое, пытаются отделить интерфейс от внутреннего интерфейса. Вы можете создать свой пользовательский интерфейс с помощью реакции, углового или любого другого и взаимодействовать с django с помощью API. Для создания API вы можете использовать Django Rest Framework.

Не используйте Django Admin в качестве открытого интерфейса. Используйте это только для админов!

Если вы начинаете использовать Django Admin как интерфейс для своего общедоступного сайта, вы будете сражаться с пакетом, чтобы адаптировать и защищать представления во избежание деструктивных действий. Что произойдет, если вы забудете поле только для чтения? Что делать, если пользователь удалил что-то ON_CASCADE?

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

Смежные вопросы