Настройка функций интерфейса администратора Django - PullRequest
1 голос
/ 21 сентября 2010

Я новичок в django и немного застрял при попытке заставить администраторский сайт работать так, как мне бы этого хотелось. Мне интересно, если для создания функциональности администратора я хочу, лучше создать пользовательское приложение администратора с шаблоном, унаследованным от admin / base_site.html, используя вход в веб-интерфейс с перенаправлением, когда is_staff равен true.

Начальные детали, которые заставляют меня думать так:

  1. У меня есть цепочка иностранных ключей, и я хотел бы отобразить вложенные строки на родительской странице администратора. Я пытался использовать easymode, но у него есть свои проблемы и требования, которые могут вызвать головную боль, без которой я могу обойтись.

  2. Я хотел бы добавить функцию, позволяющую администратору добавлять экземпляр модели, который запускает создание экземпляров, связанных с ней моделей и перенаправлений и т. Д. Это требует добавления как минимум нескольких вызываемых элементов, которые я не понял тем не менее, как на самом деле добиться успеха в модели администратора, и в данный момент кажется, что проще просто быстро сделать это в views.py моего собственного приложения, чем пытаться играть с представлениями администратора.

В целом, создание пользовательского приложения администратора (с использованием перенаправления is_staff = true при входе в FrontEnd) кажется более гибким в долгосрочной перспективе и приведет к более продуманному и интуитивно понятному интерфейсу администратора для клиента - поэтому я полагаю, что мой Вопрос в том, что делают полу-профи? (если вы знаете, как взломать административные представления и шаблоны для вашего сердца, вы не являетесь полупрофессионалом :))

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

Ответы [ 2 ]

9 голосов
/ 21 сентября 2010

Помедленнее.Расслабьтесь.Следуйте философии Джанго.

  1. У вас есть «приложение».Он представляет данные.Сосредоточьтесь на презентации.

  2. У вас есть встроенный администратор по умолчанию для вашего "приложения".Он обновляет данные, и он уже там.

  3. Если приложение администратора не отвечает вашим потребностям, обновите формы и обновите модели, чтобы приблизиться.Но не напрягайтесь, возиться с админом.Подойди как можно ближе.Но расслабься об этом.

[Кроме того, «более интуитивный администратор» иногда не является точным описанием того, что вы пытаетесь сделать.Это может быть, но я видел некоторые «более интуитивные», которых на самом деле не было.]

более разработанный и интуитивно понятный интерфейс администратора для клиента.

Это часть приложения?Делает ли приложение на больше , чем просто представляет данные?

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

Это просто кодирование.Перестаньте возиться с администратором и начните писать свое приложение.

Подсказка: используйте как можно больше общих представлений.

Кроме того, вы говорите о своем приложении, а не о взломе админских работ, которые уже работают.

если вы знаете, как взломать административные представления и шаблоны для вашего сердца, вы не полупрофессионал

Неправильно.Весь источник там.Вы можете прочитать это, также.Это то, что делают профессионалы.Мы читаем источник.И мы не взламываем приложение администратора.

Если у вас сложные транзакции, у вас есть первоклассное, реальное, реальное приложение.Не по умолчанию admin, но часть вашего приложения, которая имеет формы.

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

0 голосов
/ 22 сентября 2010

Перейдите также по ссылкам, упомянутым в этом посте.Это может быть полезно для вас.

Сложно ли настраивать администратора Django?

...