Закрыть

Для эффективной работы на сайте используются cookie и обработка персональных данных. Пользуясь этим сайтом, вы соглашаетесь с правилами использования сайта. Подробнее

Цитата дня

Vivazzi.ru

Личный сайт Мальцева Артема

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

Чак Норрис

django-parler Check fields/fieldsets/exclude attributes of class Admin

5 сентября 2017 г. 0: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

Оцените статью

0 из 5 (всего 0 оценок)

Поля, отмеченные звёздочкой ( * ) , являются обязательными.

Спасибо за ваш отзыв!

Автор статьи

Права на использование данной статьи, расположенной на настоящей странице http://vivazzi.ru/it/django-parler-check-attributes-of-class-admin/:

Разрешается копировать статью с указанием её автора и ссылки на оригинал без использования параметра rel="nofollow" в теге <a>. Использование:

Автор статьи: Мальцев Артём
Ссылка на статью: <a href="http://vivazzi.ru/it/django-parler-check-attributes-of-class-admin/">http://vivazzi.ru/it/django-parler-check-attributes-of-class-admin/</a>

Подробнее: Правила использования сайта

Вам нужно саморазвиваться или вы хотите зарабатывать деньги?

Или вы ищите хорошие IT сервисы или книги? Сохраните свое время и взгляните на мою подборку рекомендаций, которыми постоянно пользуюсь.
Посмотреть рекомендации

Комментариев: 0

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

Чтобы оставить комментарий от своего имени войдите или зарегистрируйтесь обычным способом или через социальные сети:

Отправить

На данный момент нет специального поиска, поэтому я предлагаю воспользоваться обычной поисковой системой, например, Google, добавив "vivazzi" после своего запроса.

Попробуйте