pay*_*ike 4 python django django-formwizard urlconf
根据表单向导文档,初始数据应该是静态字典.但是有可能动态地提供初始数据.
这是我的情况
def get_context_data(self, form, **kwargs):
context = super(debugRegistrationWizard, self).get_context_data(form=form, **kwargs)
email = InvitationKey.objects.get_key_email(self.kwargs['invitation_key'])
context.update({'invitation_key': self.kwargs['invitation_key']})
return context
Run Code Online (Sandbox Code Playgroud)
电子邮件是我想要的步骤0中的初始数据,但我只能在get_context_data方法中获取此电子邮件.我怎样才能做到这一点?
顺便说一句,如果formwizard.as_view的urlconf接受如下参数:
url(r'^registration/(?P<invitation_key>\w+)$', debugRegistrationWizard.as_view(FORMS)),
Run Code Online (Sandbox Code Playgroud)
剂量它意味着我必须将变量传递给我的表单的动作属性,因为否则当我提交表单时,我将得到一个未找到的url错误.
您可以覆盖该方法 get_form_initial
def get_form_initial(self, step):
initial = self.initial_dict.get(step, {})
if step == 42:
email = InvitationKey.objects.get_key_email(self.kwargs['invitation_key'])
initial.update({'email': email})
return initial
Run Code Online (Sandbox Code Playgroud)
参考:https://django-formtools.readthedocs.io/en/latest/wizard.html#formtools.wizard.views.WizardView.get_form_initial
| 归档时间: |
|
| 查看次数: |
3365 次 |
| 最近记录: |