Comment puis-je utiliser un ModelForm spécifique comme formulaire pour mon modelformset_factory? J'utilise django-form-utilities pour avoir un BetterModelForm, et je voudrais utiliser cette même forme comme base de mon formset. J'ai pensé que je pourrais écrire ma propre fabrique personnalisée qui étend formset, mais je devinais qu'il y a un moyen plus facileDjango ModelFormset utilise spécifique ModelForm au lieu d'un généré automatiquement
0
A
Répondre
6
Il n'est pas nécessaire d'étendre natif modelformset_factory()
. Regardez la définition de cette fonction dans le code source de 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)
Vous pouvez simplement passer votre ModelForm personnalisé via form
paramètre, mais pas l'instance réelle - vous devez passer la ref forme elle-même, utilisez donc à savoir. MyModelForm instancé de MyModelForm().