ステップのチェックボックスに基づいて条件付きで Django Formwizard (Django 1.4) のステップを繰り返そうとしています。フォームはオブジェクトを作成し、(うまくいけば) チェックボックスがあり、ステップを繰り返して、同じフォームで同じモデルの別のオブジェクトを作成できます。
私はこの答えを見ました:Django FormWizard Dynamically Alter form_listですが、残念ながらそれはFormWizardの古いバージョンにのみ適用されると思います。
process_step 関数には form_list 属性がなくなりました。また、現在のステップ属性 (またはステップ属性) もありませんが、フォームの QueryDict を介して現在のステップにアクセスできます。フォームのディクショナリが含まれていますが、そのディクショナリに別のステップを挿入しても何も起こらないと思います。残念ながら、リストではなくディクショナリであるため、挿入した場所の後にすべてのステップ キーを変更する必要があります。
では、Django 1.4 FormWizard を使用してフォーム リストに新しいステップを追加する良い方法はありますか?
更新 - get_next_step(self, step) をオーバーライドするのが良いと思い始めていますが、どんな意見でも大歓迎です。
更新 #2 -- get_next_step で作業を試みましたが、インスタンスの form_list に新しいフォームを挿入できませんでした。それが不可能だという意味ではありません - アイデアですか?