码迷,mamicode.com
首页 > 其他好文 > 详细

Django views.py 视图函数

时间:2018-12-21 22:57:05      阅读:496      评论:0      收藏:0      [点我收藏+]

标签:登录   cti   fun   链接   import   ons   short   put   gis   

  • 参数: request 跟请求相关的内容
    request.method 判断请求方式 8种
    GET : 获取一个页面

      POST:       提交数据
    
      PUT :       上传
    
      HEAD:           不用上传就获取数据
    
      DELETE:         删除 Request-URL 标识的
    
      TRACE:          回显服务器收到的请求
    
      OPTIONS:    测试服务器功能是否正常
    
      CONNECT:    将链接改为管道方式
    
    常用 GET  POST 请求
    
      request.POST      form表单提交POST请求传递的数据    获得一个{}   取值方式 []  get()
    
      request.GET         URL地址上的参数   获得一个{}   取值方式 []   get()
    request 相关方法
    request.method -->> 判断请求方式
    request.POST -->> form表单提交POST请求传递的数据 获得一个{} 取值方式 [] get()
    request.GET -->> URL地址上的参数 获得一个{} 取值方式 [] get()
    request.path_info -->> 获取当前请求的路径 不包含参数
    request.get_full_path() -->> 获取当前请求的路径 含参数
    request.get_host() -->> 获取请求主机的 ip地址及端口号
    request.body -->> 请求体 byte类型 request.POST就是从 body 中提取的
    request.COOKIES -->> 获取所有的 cookies 字典形式
    request.META -->> 获取所有的HTTP头部信息 是一个字典
    request.session -->> 获取一个可读又可写 的 类似字典的 对象
    request.is_secure() -->> 判断请求是否安全
    request.is_ajax() -->> 判断是否是 ajax 请求
    request.get_signet_cookies(key,salt=‘盐‘) -->> 获取假眼的 cookies 字典形式
    视图写法
    • FBV (function based view ) 写url和函数的对应关系
      from django.shortcuts import render, redirect, HttpResponse
      def login(request):
      err = ‘‘
      if request.method == ‘POST‘:
      name = request.POST.get(‘name‘)
      pwd = request.POST.get(‘pwd‘)
      if name == ‘root‘ and ‘pwd‘ == ‘123‘:
      return HttpResponse(‘登录成功‘)
      err = ‘账号或密码错误‘
      return render(request,‘login.html‘,{‘err‘:err})
    • CBV (class based view) 写url和类的对应关系
      from django.views import View
      class Index(View):
      # GET 请求
      def get(self, request):
      return render(request,‘index.html‘)
      # POST 请求
      def post(self, request):

              data = request.POST.get(‘data‘)
              print(data)
              return self.get(request)

    返回值
    导入三件套
    from django.shortcuts import render, redirect, HttpResponse, reverse

    redirect(reverse(‘/index/‘)) 重定向  + 反向解析
    
    def login(request):
      return HttpReponse(‘字符串‘)        返回一些字符串  
    
    def regist(request):    
      return  render(request,‘模板的文件名‘,{"data":"name"})      返回一个完整的HTML页面
    
    def index(request):
      return redirect(‘要跳转的地址‘)       重定向    Location : 地址

Django views.py 视图函数

标签:登录   cti   fun   链接   import   ons   short   put   gis   

原文地址:https://www.cnblogs.com/zhang-zi-yi/p/10158897.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!