Django ModelFormset использует определенный ModelForm вместо автоматически сгенерированного - PullRequest
0 голосов
/ 12 ноября 2010

Как я могу использовать конкретную ModelForm в качестве формы для моей моделиformset_factory?

Я использую утилиты django-form-утилиты, чтобы использовать BetterModelForm, и я хотел бы использовать эту же форму в качестве основы моего набора форм. Я думал, что смогу написать свою собственную фабрику, которая расширяет набор форм, но я догадывался, что есть более простой способ

1 Ответ

6 голосов
/ 12 ноября 2010

Нет необходимости расширять нативный modelformset_factory(). Посмотрите на определение этой функции в исходном коде django:

def modelformset_factory(model, form=ModelForm, formfield_callback=None,
    formset=BaseModelFormSet,
    extra=1, can_delete=False, can_order=False,
    max_num=None, fields=None, exclude=None)

Вы можете просто передать свою пользовательскую форму модели с помощью параметра form, но не фактический экземпляр - вам нужно передать саму форму ref, поэтому используйте ie. MyModelForm, встроенный в MyModelForm ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...