有没有什么方法可以跳过Django表单向导(即SessionWizardView)中的多个步骤?
我知道可以使用condition_dict生成以下表单显示逻辑:第1页-〉第3页
#urls.py
path('main/', MyWizard.as_view(set_of_forms, condition_dict={'1': view_condition} ))
我想做的是:第1页--〉第4页
假设根据第1页的内容添加condition_dict应该可以跳过第3页,但它不起作用。例如:
#urls.py
path('main/', MyWizard.as_view(set_of_forms, condition_dict={'1': view_condition, '2': view_condition2,} ))
我真的被如何破解这个难题难住了。如果你能提供任何指导,我将非常感激。
3条答案
按热度按时间t2a7ltrp1#
指定FormWizard何时跳过一个步骤的典型方法是使用condition_dictionary。Django使用该结构来只包含一个步骤的表单,当条件(设置为callables)
pjngdqdw2#
谢谢你的回答,Paulo!这正是轻松跳过表单页面所需要的。根据Paulo的回答,需要做三个更改才能同时跳过 * 多个 * 步骤:
qqrboqgw3#
按照这个逻辑,进入第一步,函数
return_true
执行了4次,check_step_two
执行了8次,为什么呢?另外,继续到第二步,函数return_true执行了,为什么呢?