您的位置:首页 > 编程语言 > Go语言

django--基于类的视图

2016-04-22 14:40 323 查看
Django 提供基本的视图类,它们适用于绝大多数的应用。所有的视图类继承自View 类,它负责将视图连接到URL、HTTP
方法调度和其它简单的功能。RedirectView 用于简单的HTTP
重定向,TemplateView 扩展基类来渲染模板。

在urlconf中的简单用法:

使用通用视图最简单的方法是直接在URLconf
中创建它们。如果你只是修改基于类的视图的一些简单属性,你可以将它们直接传递给as_view() 方法调用:

example:

from django.conf.urls import url
from django.views.generic import TemplateView

urlpatterns = [
url(r'^about/', TemplateView.as_view(template_name="about.html')),

]

在views.py中的用法:子类化通用视图:

这种方式是继承一个已经存在的视图并在子类中覆盖其属性(例如template_name)或方法(例如get_context_data)以提供新的值或方法。例如,考虑只显示一个模板about.html 的视图。Django 有一个通用视图TemplateView来做这件事,所以我们可以简单地子类化它,并覆盖模板的名称:

example:from django.views.generic import TemplateView

class AboutView(TemplateView):
template_name = "about.html"
然后还要在url中配置它:from django.conf.urls import url
from some_app.views import AboutView

urlpatterns = [
url(r'^about/', AboutView.as_view()),
]
注意:AboutView是一个继承自TemplateView的类,所以我们要调用父类的as_view()方法!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: