Нужна «Начальная точка» подсказки о добавлении интерфейса «вкладки» в Django Admin

StackOverflow https://stackoverflow.com/questions/2788179

  •  04-10-2019
  •  | 
  •  

Вопрос

Я новичок в мире веб-разработки - это означает, что я новый для JavaScript / CSS. Теперь я строю веб-систему с Python Django. Мне интересно, вы хотели бы дать мне несколько советов в качестве отправной точки для добавления интерфейса «Tabbed» в Django Admin?

Например, есть 3 подробной таблицы для главного стола, и я хочу использовать 3 разных вкладка для редактирования этой 3 деталей в странице «Редактировать» для главной таблицы. Заранее спасибо!

Это было полезно?

Решение

Прежде всего, нужно решить, решить ли это с помощью JavaScript или переопределив шаблоны. Оба из них являются хорошими решениями в зависимости от ваших требований.

Один легкий способ сделать это, и первый подход, который вы можете принять, чтобы начать тестирование, это чтобы поставить каждую вкладку в другой полей И после этого сделайте интерфейс с вкладками, чтобы показать / скрыть их. Это плюсы - это то, что это действительно простой способ сделать это, минусы, что у вас нет большой гибкости, не начнем меняться на большую дому с JavaScript.

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

Другой подход - переопределить шаблон Change_form для этой конкретной модели и ссылку новые вкладки к тому же URL, но с разными параметрами получения, например. ... / mymodel /? active_tab = 2 и проверьте это в шаблоне / представлении и визуализируйте соответствующее содержимое. Наиболее заметным про исполнителей этого способа является то, что пользователю не нужно включить JavaScript.

Вы можете проверить, как django-cms. Имеет ли это. Отказ Он имеет очень хороший интерфейс с вкладками для изменения между различными языками. Один из лучших способов решать, как начать делать что-то, проверяет, как другие сделали это. Браузер Исходный код, установите его и начните экспериментировать!

Надеюсь это поможет.

РЕДАКТИРОВАТЬ

Еще один пример подхода здесь. Отказ Легче просто пройти через патч, прилагаемый, чем полный код Django-CMS. Ваше здоровье.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top