Django基础视图TemplateView
创建项目,创建APP添加APP,在APP里面的urls.py文件里面
path('', views.index3.as_view(), name='index3')
views.py
class index3(TemplateView):
template_name = 'index4.html' # 设置模板名字
template_engine = None # 设置模板引擎
content_type = None # 设置响应内容
extra_context = {'title': 'This is GET'} # 设置模板变量
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs) # 继承重定义
context['value'] = 'I am MyDjango' # 设置数据
return context
def post(self, request, *args, **kwargs):
self.extra_context = {'title': "This is POST"} # 实例化数据
context = self.get_context_data(**kwargs) # 可以从**kwargs传入数据
return self.render_to_response(context) # 实现响应类继承HTTPResponse
index4.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>test</title>
</head>
<body>
<h3>Hello,{{ title }}</h3>
<div>{{ value }}</div>
<form action="" method="post">
{% csrf_token %}
<input type="submit" value="更改">
</form>
</body>
</html>