Django网络应用开发的5项基础核心技术包括模型(Model)的设计,URL 的设计与配置,View(视图)的编写,Template(模板)的设计和Form(表单)的使用。
TemplateResponse提供了一种方法。与基本HttpResponse对象不同 ,TemplateResponse对象保留视图提供的模板和上下文的详细信息以计算响应。在响应过程中稍后需要时,不会计算响应的最终输出。
继承链:
HttpResponse --> SimpleTemplateResponse --> TemplateResponse
① SimpleTemplateResponse 对象
属性
要呈现的模板的名称。接受依赖于后端的模板对象(例如返回的对象 get_template()),模板名称或模板名称列表。
['index.html, 'path/to/header.html']
呈现模板时要使用的上下文数据。它必须是一个 dict。
{'number': 123}
使用当前模板和上下文数据的响应当前呈现值内容。
一个布尔值,指示是否已呈现响应内容。
方法
__init__(template, context=None, content_type=None, status=None, charset=None, using=None)
resolve_context(context)
resolve_template(template)
add_post_render_callback()
render()
TemplateResponse可以用在任何HttpResponse可以使用的地方
from django.template.response import TemplateResponse
def index(request):
return TemplateResponse(request, 'article_list.html', {'articles': Articles.objects.all()})