Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 使用TemplateView将方法视图迁移到基于类的视图_Django_Django 1.5 - Fatal编程技术网

Django 使用TemplateView将方法视图迁移到基于类的视图

Django 使用TemplateView将方法视图迁移到基于类的视图,django,django-1.5,Django,Django 1.5,在Django 1.4及之前的版本中,我有如下观点: def myview(请求,项目id): 项目=获取对象或404(项目,项目id) 如果request.method==“GET”: 将直接返回到模板(请求“template.html”, {'form':ItemForm()}) elif request.method==“POST”: form=ItemForm(request.POST) 如果form.is_有效(): 返回重定向(“/”) 其他: 将直接返回到模板(请求“templat

在Django 1.4及之前的版本中,我有如下观点:

def myview(请求,项目id):
项目=获取对象或404(项目,项目id)
如果request.method==“GET”:
将直接返回到模板(请求“template.html”,
{'form':ItemForm()})
elif request.method==“POST”:
form=ItemForm(request.POST)
如果form.is_有效():
返回重定向(“/”)
其他:
将直接返回到模板(请求“template.html”,
{'form':form})

我想重写它,使之与Django使用TemplateView的新的基于类的视图系统兼容,但我不确定如何实现这些方法。如何迁移到使用
TemplateView
子类来实现POST和GET?

您可能希望使用:


我如何在课堂上写出真实的互动?你想要什么样的“互动”?与上面详述的相同。如何编写我的
get()
方法和
post()
方法?我建议您阅读链接文档。
FormView
继承自
FormMixin
ProcessFormView
,并处理get和post功能本身。如果您想在已经提供的get和post方法之上编写自己的get和post方法,只需编写它们。这些方法称为get和post。您还可以查看更多信息。
class ItemFormView(FormView):
    template_name = 'template.html'
    form_class = ItemForm
    success_url = '/'