ウィザードのステップが動的である可能性はありますか?例えば、第2ステップはn回繰り返される?Django Wizardを使用した動的ステップ数
答えて
私は同じ問題を持っていた、と(さえジャンゴ1.4での)フォームウィザードはちょうど私のために動作しませんでした。いくつかのことが間違って始まり、デバッグはひどいものでした。
私は、既存のclasesに基づいていくつかのコードを書きました。私にとって素晴らしいソリューションを投稿した私の要点をご覧ください。ご意見やご提案(クラス名を含む)がありましたら、投稿してください。動的パスと(数学)グラフとして配置
マルチページフォームマネージャ、およびフォームの数(次のフォームは、実際の状態とユーザ入力に依存します)。ストレージと検証が処理されます。 Django-1.4の
django.contrib.formtools.wizard.views.SessionWizardView
に基づいています。 https://gist.github.com/3098817カスタムジャンゴのsessionStorage。ファイルを扱うすべての機能を削除しました。 Django-1.4の
django.contrib.formtools.wizard.storage.base.BaseStorage
とdjango.contrib.formtools.wizard.storage.session.SessionStorage
に基づいています。 https://gist.github.com/3080251
は何をやりたいのですか?
手順Xがのn回その後、答えはイエスですが繰り返され、ウィザードを作成したい場合は、あなたがそれを行うことができますし、それは難しいことではありません。
は、あなただけの特定のパラメータ指定されたクラスを作成するウィザードクラスファクトリを作成する必要があるとすれば完了です。
あなたが意味する場合は、私は、オンザフライで、ウィザードの手順を変更することができます。 答えはまだはいですが、初期化後にウィザードの内部状態を変更する必要があるため、状況は少し複雑になります。
これはあなたが本当に私は本当にそれについて考えることをお勧め2番目のオプションを必要とする場合は、代替設計を見つけ、最後の手段として動的なウィザードアプローチを選択しようと、全然面白くないです。
私もこの問題に苦しみました。 Tommaso Barbugliはクラスのための工場を作ることについて正しいです。 私は現在Django 1.6で作業しています。 URL内の
は、これを含める:url('/create_wizard/', factory_wizard, name='factory_wizard')
これは工場です:
class WizardClass(SessionWizardView):
...
def factory_wizard(request, *args, **kwargs):
parameter_to_know_which_step_number = # I let you implement this one (I did it by the session data)
ret_form_list = [FirstFormClass, SecondFormClass]
for _ in range(parameter_to_know...):
form_list.append(SecondFormClass)
class ReturnClass(WizardClass):
form_list = ret_form_list
return ReturnClass.as_view()(request, *args, **kwargs)
- 1. ステップ関数を使用した目的関数の最適化
- 2. 変数djangoテンプレートを使用した動的URL
- 3. 宣言型パイプラインの動的なステップ数の動的数
- 4. wizardページを動的に追加して結果を返す
- 5. Djangoテーブル2を使用した動的テーブル
- 6. django LOGIN_REDIRECT_URL(動的値を使用)
- 7. Djangoで動的変数を使用するModel.objects.filter()
- 8. 動的SQLを使用した動的索引の使用
- 9. 異なるステップ定義を使用した同じステップ
- 10. ベベル・ノードを使用したエクスプレス・サーバーによるステップ・バイ・ステップ
- 11. reactjs定数パス変数を使用した動的インポート
- 12. django複数の動的フォーム
- 13. AutolayoutとUITableAutomaticDimension(動的UILabel +複数のUIImageViews)を使用した動的高さテーブルセル
- 14. PHPのMySQLの動的データを使用した動的変数の作成
- 15. 行数は、動的レポートを使用して動的レポート
- 16. 動的パラメータを使用したTwig関数の呼び出し
- 17. URL引数を使用した動的Webサービス呼び出し
- 18. Django用の動的データベース
- 19. Django:ユーザープロファイル用の動的URL
- 20. 動的値を持つMaxValueValidatorを使用したDjangoフォームの検証
- 21. 一時的な使用のためのdjangoモデルのインスタンス変数
- 22. ダイナミックスコープコンパイルを使用した動的テンプレート
- 23. JdbcCursorItemReaderを使用した動的SQLクエリ
- 24. SQLiteデータベースを使用した動的スピナー
- 25. Ajaxを使用した動的メニュー
- 26. 動的IDを使用したバックボーンビュー
- 27. バックエンドインターフェイスを使用した動的スケジュールグラフィック
- 28. カスタムデリゲートを使用した動的qtreeview
- 29. ui.bootstrap.contextMenuを使用した動的コンテキストメニュー
- 30. スタティックデコレータを使用した動的装飾
は、ウィザードのクラスファクトリのコードを提供するだろうか? この工場のパラメータは何ですか? – aRkadeFR