Django views视图响应对象
一、定义
即在视图层处理后被封装响应给浏览器的对象
二、对象说明
1、Render
结合一个给定的模板和一个给定的上下文字典,并返回一个渲染后的 HttpResponse 对象
参数:
request: 用于生成响应的请求对象。
template_name:要使用的模板的完整名称,可选的参数
context:添加到模板上下文的一个字典。默认是一个空字典。如果字典中的某个值是可调用的,视图将在渲染模板之前调用它。
content_type:生成的文档要使用的MIME类型。默认为DEFAULT_CONTENT_TYPE 设置的值。
status:响应的状态码。默认为200。
2、redirect
参数可以是:
一个模型:将调用模型的get_absolute_url() 函数
一个视图,可以带有参数:将使用urlresolvers.reverse 来反向解析名称
一个绝对的或相对的URL,将原封不动的作为重定向的位置。
默认返回一个临时的重定向;传递permanent=True 可以返回一个永久的重定向。
应用实例:
1、传递一个对象
rom django.shortcuts import redirect def my_view(request): ... object = MyModel.objects.get(...) return redirect(object)
2、传递一个视图名称
可以带有位置参数和关键字参数;将使用reverse() 方法反向解析URL: def my_view(request): ... return redirect('some-view-name', foo='bar')
3、传递一个硬编码的相对URL或完整URL
ef my_view(request): ... return redirect('/some/url/')