Django的app里面的视图函数

我之前说过需要重点去了解view和model,下面是我的总结。

视图函数是存在view.py里面的,视图函数的主要功能是接收请求、返回响应。在建立应用程序后,先在URL配置文件中加一条配置项指明URL与视图函数的对应关系。然后按照实际需求在视图函数中编写逻辑代码来实现相应的功能,返回一个HTTP响应。

下面是一些简单的理解:

一.视图函数view

  视图函数是接收一个请求(request对象),并返回响应的函数

  1. HttpResponse响应请求

    这个方法是返回字符串一类的,可以识别标签

  2. render响应请求

    render(request,".html",[**kwargs]),返回一个html页面,参数可以传给html中需要渲染的变量

  3. redirect响应请求

    redirect(reverse("url"),[*args]),重定向跳转到一个页面

二.CBV和FBV

  1. FBV function base views

    在视图函数中使用函数处理请求

def index(request):
    return HttpResponse("ok")

简单的FBV

  2. CBV class base views

    在视图函数中使用类处理请求

from django.views import View
class MyView(View):
    name = "xxx"    # 这是分组传来的参数
    def post(self,request):
        return HttpResponse("post")
    def get(self,request):
        return HttpResponse("get")
​
​
urls.py配置
from app.views import MyView
​
url(r"正则",MyView.as.view(name="xxx"))

简单的CBV

Django的app里面的视图函数_第1张图片

 

三. request对象

  request.method  请求方式

  request.GET    get请求的所有数据,是一个字典

  request.POST    post请求的所有数据,是一个字典

  request.path    请求路径

  request.get_full_path()  获取带有参数的路径

  request.META()   请求头信息,是一个字典

四. response对象

  HttpSponse("xxx")    响应一个字符串,可以识别标签

  render(request,".html"[**kwargs])  响应一个页面,参数可以渲染页面中需要的

  redirect()       重定向,跳转到一个页面

你可能感兴趣的:(Python,django,python,后端)