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/')

 

posted @ 2017-11-10 08:54  刘小伟  阅读(470)  评论(0编辑  收藏  举报