これが明確であることを願っています-これはかなり標準的なことだと思います。
空のフォームをいくつか作成したいのですformset
が、フォームセットがレンダリングされるたびに空白のフォームの数を変える必要があります。たとえば、次のように 2 つの空のフォームを取得できます。
MyFormSet = inlineformset_factory(ParentModel, MyModel, extra=2)
# and in the view...
f = MyFormSet() # has 2 empty forms.
しかし、問題は、最初に必要な空のフォームの数がわからないことです。GET パラメータに応答して、インライン モデル フォームセットで多数のフォームをレンダリングしたいとします。MyFormSet()
は常に 2 を返します。それ以上でもそれ以下でもありません。
私はこのようなものが欲しいです:
MyFormSet = inlineformset_factory(ParentModel, MyModel)
# In the view...
f = MyFormSet(extra=some_number())
# ... render f
しかし、明らかにそれはうまくいきません。異なる数の空白のフォームでフォームセットをレンダリングするたびにMyFormSet
、 を使用して再定義する必要がありますか? formset_factory
それとも、明らかな何かが欠けていますか?