3

如何在视图中包装 Django表单向导?我需要这样做,以便我可以访问request.

有没有人有一些示例代码?

4

3 回答 3

5

我可能应该只是评论 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)
于 2010-10-15T18:30:16.257 回答
2

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 表单向导中的答案基本相同?

于 2013-01-29T19:53:48.853 回答
0

这个Django 片段可能很有用。

来自标题:“ FormWizard inside view 具有适当的上下文处理和站点模板支持,而无需使用 urls.py

于 2010-08-17T16:19:24.687 回答