Кастомізація полів у Джанго адмінці
Якщо нам недостатньо автоматичного налаштування форматування полів форми редагування сутності (адмінка), то в Джанго для цього приводу існує декілька цікавиз можливостей.
Загалом, для початку, слід сказати, що форматувати поля допомагають спеціальні класи, які називаються widgetИ
Пошукайте файл widgets.py - він розпоовість вам багато цікавого.
Отже завдання: Збільшити поле, яке дозволяє вибирати декілька варіантів (віддзеркалює зв’язок ManyToMany в базі данних, а клас форми (віджет), який реалізує поле в формі - SelectMultiple)
class ProductAdmin(admin.ModelAdmin):
formfield_overrides = { models.ManyToManyField: {'widget': forms.SelectMultiple(attrs={'size':'11'})}, }
Саме завдяки вбудованому методу formfield_overrides можна модифікувати поля певного типу в адмінці. Звичайно тут криється недолік, а що як нам треба модифікувати лише одне поле.
Для реалізації подібної задумки в Джанго потужний функціонал по перевизначенню властивостей поля
Comments
Post a Comment