是否可以在FormWizard表单上添加一个按钮,该按钮可以将用户引导到向导中的特定步骤?
我显然可以让他们回去或重新开始,但我希望能够提供进入特定步骤并更改其参赛作品的机会。
答案 0 :(得分:2)
是的,这是可能的。最简单的方法是使用NamedUrlWizardView
如果使用简单WizardView,则必须发送wizard_goto_step
参数,其值等于步骤名称。
假设你WizardView
有下一步的步骤
class OrderWizardView(SessionWizardView):
form_list = (
('select_customer', forms.WizardCustomerForm),
('products', forms.WizardProductFormset),
('order', forms.WizardOrderForm),
('customer', forms.WizardCustomerDetailsForm),
('review', forms.WizardReviewForm),
)
对于上一个/第一步,您可以使用{{ wizard.steps.prev }}
和{{ wizard.steps.first }}
模板变量。
<button name="wizard_goto_step" value="{{ wizard.steps.first }}">First Step</button>
<button name="wizard_goto_step" value="{{ wizard.steps.prev }}">Prev Step</button>
如果您需要特定步骤 - 请使用其名称!
<button name="wizard_goto_step" value="select_customer">Select customer</button>
<button name="wizard_goto_step" value="products">Add products</button>
...
<button name="wizard_goto_step" value="review">Review</button>