跳过django FormWizard上的步骤

hch*_*lla 3 python django formwizard

我有一个应用程序,其中有一个FormWizard有5个步骤,其中一个只应在满足某些条件时出现.

该表单适用于在线购物车上的付款向导,其中一个步骤应仅显示有可用于piking的促销活动,但是当没有促销时我想跳过该步骤而不是显示空的促销列表.

所以我希望有两种可能的流程:

step1 - step2 - step3

step1 - step3
Run Code Online (Sandbox Code Playgroud)

And*_*yuk 6

process方法process_step()为您提供了这个机会.验证表单后,您可以修改self.form_list变量,并删除不需要的表单.

如果您的逻辑非常复杂,那么您可以更好地为每个步骤/表单创建单独的视图,并完全放弃FormWizard.

  • process_step()方法用于在提交表单后__后处理数据.要使某些表单可选,您可以在传递给FormView的表单列表中引入条件:https://docs.djangoproject.com/en/1.5/ref/contrib/formtools/form-wizard/#conditional-view-skip特异性步骤 (6认同)