django-parler Check fields/fieldsets/exclude attributes of class Admin
5 сентября 2017 г. 4:22
Долго не мог понять почему Django выдаёт мне ошибку при попытке прикрутить django-parler:
Unknown field(s) (my_trans_field) specified for MyModel. Check fields/fieldsets/exclude attributes of class MyModelAdmin.
Ключевой момент в том, что в админ-классе у меня был определена переменная form
:
@admin.register(MyModel) class MyModelAdmin(TranslatableAdmin): form = MyModelForm fieldsets = ( (None, { 'fields': ('field_1', 'field_2'), }), (_('Translatable Fields'), { 'fields': ('my_trans_field', ) }), )
И, как оказалось, класс MyModelForm
нужно тоже наследовать от специфического класса TranslatableModelForm
приложения parler:
class MyModelForm(TranslatableModelForm): custom_field = forms.DateTimeField(label='Custom Field', required=False) class Media: css = {'all': ['spec/css/custom_styles.css', ]}
Теперь всё заработало, и я вижу поле my_trans_field
на странице изменения объекта.
Но, как ни странно, об этом в документации явно не было сказано (по крайней мере, на момент написания этой статьи). Только лишь есть упоминание в разделе: API documentation » parler.forms module
Похожие статьи:
Представляю вашему вниманию книгу, написанную моим близким другом Максимом Макуриным: Секреты эффективного управления ассортиментом.
Книга предназначается для широкого круга читателей и, по мнению автора, будет полезна специалистам отдела закупок и логистики, категорийным и финансовым менеджерам, менеджерам по продажам, аналитикам, руководителям и директорам, в компетенции которых принятие решений по управлению ассортиментом.
Комментарии: 1
22.07.2018 6:47 #
Спасибо! Помогло
Ответить