Django之render()

结合一个给定的模板和一个给定的上下文字典, 并返回一个渲染后的HttpResponse对象。
参数:
- request: 用于生成响应的请求对象
- template_name: 要使用的模板的完整名称, 可选的参数
- context: 添加到模板上下文的一个字典. 默认是一个空字典. 如果字典中的某个值是可调用的, 视图将在渲染模板之前调用它.
- content_type: 生成的文档要使用的MIME类型. 默认为DEFAULT_CONTENT_TYPE设置的值. 默认为"text/html"
- status: 响应的状态码. 默认为200
- useing: 用于加载模板的模板引擎的名称
一个简单的例子:
from django.shortcuts import render
def my_view(request):
# 视图代码写在这里
return render(request, "myapp/index.html", {"foo": "bar"})
上面的代码等于:
from django.http import HttpResponse
from django.template import loader
def my_view(request):
t = loader.get_template("myapp/index.html")
c = {"foo": "bar"}
return HttpResponse(t.render(c, request))
其他:
from django import template t = template.Template('My name is {{ name }}.') c = template.Context({'name': 'Adrian'}) print t.render(c) #--------------------------------------------------------------- import datetime from django import template import DjangoDemo.settings now = datetime.datetime.now() fp = open(settings.BASE_DIR+'/templates/Home/Index.html') t = template.Template(fp.read()) fp.close() html = t.render(template.Context({'current_date': now})) return HttpResponse(html) #--------------------------------------------------------------- from django.template.loader import get_template from django.template import Context from django.http import HttpResponse import datetime def current_datetime(request): now = datetime.datetime.now() t = get_template('current_datetime.html') html = t.render(Context({'current_date': now})) return HttpResponse(html) #--------------------------------------------------------------- return render_to_response('Account/Login.html',data,context_instance=RequestContext(request))
浙公网安备 33010602011771号