如何在视图中包装 Django表单向导?我需要这样做,以便我可以访问request
.
有没有人有一些示例代码?
我可能应该只是评论 Manoj 的答案,但听起来你需要代码
网址.py
from django.conf.urls.defaults import *
from MyApp import views
urlpatterns = patterns(
'',
(r'^wizard/$', views.MyWizardView ),
)
视图.py
@login_required
def MyWizardView (request):
cw = MyWizard([WizardName, WizardQuestions, WizardProvider, WizardGoomber])
return cw(request)
该as_view
函数将基于类的视图转换为可调用视图:
from django import forms
from django.contrib.formtools.wizard.views import SessionWizardView
class Form1(forms.Form):
a = forms.CharField()
class Form2(forms.Form):
b = forms.CharField()
class MyWizard(SessionWizardView):
pass
wizard_view = MyWizard.as_view([Form1, Form2])
def view(request):
# do something fancy with the request object here
return wizard_view(request)
这与如何在视图中包装 Django 表单向导中的答案基本相同?
这个Django 片段可能很有用。
来自标题:“ FormWizard inside view 具有适当的上下文处理和站点模板支持,而无需使用 urls.py ”