视图 views

视图的工作流程

views的工作流程可以分为三个部分:

  1. 用户发送请求(request)
  2. 处理用户的请求(handler)
  3. 将处理后的数据返回给用户(response)

Request简介

request是浏览器向服务器发送的请求对象(包含用户信息、请求内容、请求方法等)

可以使用dir(request)查看request对象中的所有方法(如下图):

常用的request对象方法

  • request.GET 获取url上?后面的参数
  • request.POST 获取post提交的参数
  • request.path 请求的路径(如127.0.0.1/index/aqin中就是/index/aqin
  • request.method 请求的方法(get/post等)
  • request.COOKIES 请求过来的cookies
  • request.user 请求的用户对象(可以通过他判断用户是否登陆,并获取用户信息)
  • request.session 当前对话(一个类似字典对象,可读可写)
  • request.META 包含所有HTTP首部(一个标准的Python字典)

返回对象(常见的)

  • HttpResponse 直接返回数据内容

    • from django.http import HttpResponse
  • reder 返回模版渲染后的数据
    • from django.shortcuts import render
  • JsonResponse 返回json格式的数据
    • from django.shortcuts import render

基于类的视图

app/views.py

from django.http import HttpResponse
from django.views.generic import Viewclass MyClass(View):def get(self, request):name = request.GET.get('name')print(dir(request))return HttpResponse('hello {}~'.format(name))

app/urls.py

from django.urls import path
from .views import MyClassurlpatterns = [path('myclass',MyClass.as_view())
]

urls.py

from django.contrib import admin
from django.urls import path, includeurlpatterns = [path('admin/', admin.site.urls),path('', include('app.urls')),
]

settings.py的修改部分

# 网站访问白名单
ALLOWED_HOSTS = ['*']# Application definition
# 应用注册
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app',
]……# 网站默认语言(en-us/zh-hans)
LANGUAGE_CODE = 'zh-hans'# 配置网站时间(亚洲时间,默认是 UTC)
TIME_ZONE = 'Asia/Shanghai'# 默认True
USE_TZ = False

网页效果

控制台输出

【Django】Django视图views详解相关推荐

  1. Django的视图View详解

    django的view可以是方法,也可以是类,按照django的规则,我们添加的view都要写到app的views.py文件中 其中,方法view我们称之为FBV(function base view ...

  2. Django的信号机制详解

    Django的信号机制详解 Django提供一种信号机制.其实就是观察者模式,又叫发布-订阅(Publish/Subscribe) .当发生一些动作的时候,发出信号,然后监听了这个信号的函数就会执行. ...

  3. 怎么创建python django项目_创建Django项目图文实例详解

    本文实例讲述了创建Django项目的方法.分享给大家供大家参考,具体如下: 创建Django项目 创建一个HelloDjango项目 GitHub地址:https://github.com/liang ...

  4. django配置环境linux,linux环境下Django的安装配置详解

    linux环境下Django的安装配置详解 1. 下载安装Django pip install Django==1.6.5 测试是否安装成功 >>> import django> ...

  5. php视图查询的优势,ThinkPHP视图查询详解

    搜索热词 ThinkPHP提供的视图查询应用功能十分强大,用户利用视图查询功能可以将多个数据表的字段内容按需要进行指定和筛选,组织成一个基于这些数据表的视图模型,然后就可以通过该模型直接进行多表联合查 ...

  6. Qt图形视图框架详解-安晓辉-专题视频课程

    Qt图形视图框架详解-12227人已学习 课程介绍         介绍Qt中的Graphics View Framework,涉及View.Scene.Item的关系,如何自定义QGraphicsI ...

  7. MySQL 视图(详解) navicat如何创建视图

    文章目录 MySQL 视图(详解 一,视图概念 使用视图的原因 二,创建视图 (1)基本语法 (2)创建基于单表的视图 [实例 1] [实例 2] (3)创建基于多表的视图 [实例 3] (4)查询视 ...

  8. mysql视图的更新 条件_mysql中视图更新详解

    视图的可更新性与视图中查询的定义是有关的 一.mysql中那些试图使不可更新的?以下类型的视图是不可更新的 1.包含以下关键字的sql语句:聚合函数(sum.min.max.count).distin ...

  9. 【Unity3D-UGUI系列】(十二)ScrollView 滚动视图组件详解

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 QQ群:1040082875 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有 ...

  10. python后台架构Django教程——视图views渲染

    全栈工程师开发手册 (作者:栾鹏) 本文衔接至python后台架构Django开发全解. 有其他问题请先阅读: http://blog.csdn.net/luanpeng825485697/artic ...

最新文章

  1. Matlab与线性代数 -- 矩阵的特征值与特征向量
  2. 白钢条用什么可以切割_错怪李佳琦了!原来用小苏打刷牙,1个月真的可以白4度,太心动了...
  3. 菱形继承,多继承,虚继承、虚表的内存结构全面剖析(逆向分析基础)
  4. RNN和LSTM、GRU的简单理解
  5. Java中的贷款模式(又名贷方承租人模式)
  6. Log4j 2配置与IntelliJ IDEA控制台颜色
  7. 2016年10月计算机网络技术,2016年10月自考计算机网络技术练习题及答案(2)
  8. extjs4.2 前端读取对象的方法
  9. Windows Live SkyDrive, Windows Live Sync 和 Live Mesh
  10. linux下pip安装模块失败,Linux pip包安装错误
  11. JavaScript数据类型之字符串型(4)
  12. 一篇搞定 Redis6(完整版)
  13. Pandas常用函数diff和shift函数学习使用
  14. Java新手编程入门
  15. 下载地址部落冲突(Clash Of Clans)免费获取宝石
  16. 推荐系统-推荐冷启动问题
  17. bootstrap typeahead实现模糊查询功能
  18. 智能对话系统原理和实践
  19. 2022.11.21【bug笔记】|bam文件报错:Cannot add sequence that already exists in SAMSequenceDictionary
  20. 一次CPU过载的简单排查历程

热门文章

  1. html 图片导出excel,html静态表格导出到excel
  2. linux redis-trib.rb,redis redis-trib.rb使用密码管理集群
  3. 深度学习(6): RNN
  4. nonebot2插件之主持飞花令
  5. Google正确搜索方法
  6. linux用户态定时器,一种基于linux用户态调用定时器的方法及系统的制作方法
  7. 使用计算机键盘的基本步骤,用键盘怎样关机(win7电脑键盘关机的操作方法)...
  8. 【dp】【斜率优化】土地购买
  9. 1597: [Usaco2008 Mar]土地购买 斜率优化
  10. SDM439/SDM429/SDM450 Sensors Overview (80-PF208-11)