首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

03.Django基础三之视图函数

这个视图会返回一个HttpResponse对象,其中包含生成的响应。每个视图函数都负责返回一个HttpResponse对象。   Django使用请求和响应对象来通过系统传递状态。   ...注意:使用CBV时,urls.py也做对应的修改:: # urls.py from django.conf.urls import url from myapp.views import MyView...有人认为fbv比cbv更pythonic,窃以为不然。python的一大重要的特性就是面向对象。而cbv更能体现python的面向对象cbv是通过class的方式来实现视图方法的。...上传文件示例 def upload(request): """ 保存上传文件,数据需要存放在某个位置。默认当上传文件小于2.5M时,django会将上传文件的全部内容读进内存。...301和302状态码都表示重定向,就是说浏览器在拿到服务器返回的这个状态码后会自动跳转到一个新的URL地址,这个地址可以从响应的Location首部获取 (用户看到的效果就是他输入的地址A瞬间变成了另一个地址

4.9K30

python 终极篇 --- django

注意: 使用CBV时,urls.py也做对应的修改: # urls.py url(r'^add_class/$', views.AddClass.as_view()), CBV简单的流程:    ...得到HttpResponse对象,返回django处理 fbv ---   基于函数的视图     cbv ----基于类的视图                                  加装饰器...# 使用CBV时要注意,请求过来后会先执行dispatch()这个方法,如果需要批量对具体的请求处理方法,get,post等做一些操作的时候,这里我们可以手动改写dispatch方法,这个dispatch...def upload(request): """ 保存上传文件,数据需要存放在某个位置。默认当上传文件小于2.5M时,django会将上传文件的全部内容读进内存。...但当上传文件很大时,django会把上传文件写到临时文件,然后存放到系统临时文件夹

1.6K10
您找到你想要的搜索结果了吗?
是的
没有找到

Python常见面试题【悟空教程】

模块的match()和search()函数的区别 re模块match(pattern,string,[flags]),检查string的开头是否与patter匹配 re模块search(pattern...17.Python如何进行内存管理机制 1.对象的引用计数机制 2.垃圾回收机制 3.内存池机制 18.如何在一个function里面设置一个全局的变量 在function的开始插入一个global...3.视图函数根据客户端的请求查询相应的数据,返回给django,然后django把客户端想要的数据作为一个字符串返回给客户端。 4.客户端浏览器收到返回的数据,进过渲染后显示给用户。...23.FBV模式和CBV模式 一个url对应一个视图函数,这个模式叫做FBV(Function Base Views) FBV请求过程: 用户发送url请求,django会依次遍历路由映射表的所有记录...session,当客户端浏览器再次访问浏览器的时候只需要从该session查找该客户的状态就可以了。

1.3K20

Django学习笔记之CBV和FBV

在之前django的学习,我们一直使用的是这种方式,所以不再赘述。 CBV CBV(class base views) 就是在视图里使用类处理请求。...Python是一个面向对象的编程语言,如果只用函数来开发,有很多面向对象的优点就错失了(继承、封装、多态)。所以Django在后来加入了Class-Based-View。可以让我们用类写View。...在url,就这么写: # urls.py from django.conf.urls import url from myapp.views import MyView urlpatterns...的class-based-view(以下简称cbv),首先要明白django引入cbv的目的是什么。...有人认为fbv比cbv更pythonic,窃以为不然。python的一大重要的特性就是面向对象。而cbv更能体现python的面向对象cbv是通过class的方式来实现视图方法的。

94010

Django模板语言与视图(view)

过滤器可以接受参数,例如:{{ sss|truncatewords:30 }},这将显示sss的30个词。(参数只能是一个或者没有 过滤器参数包含空格的话,必须用引号包裹起来。...比如使用逗号和空格去连接一个列表的元素,:{{ list|join:', ' }} '|'和':' 左右没有空格  Django模板语言中提供了约60个内置过滤器   default   如果一个变量是...静态相关文件   Django项目中,路径的static并不是文件名字,而是setting文件的 " STATIC   _URL = '/static/' "  # 能够动态地拼接路径,比如当'STATIC_URL...这个视图会返回一个HttpResponse对象,其中包含生成的响应。每个视图函数都负责返回一个HttpResponse对象Django使用请求和响应对象来通过系统传递状态。...返回HttpResponse对象django    通过继承view方法,帮助完成逻辑业务的功能(post,get,filter等八种接收方法),相较于FBV   CBV版更加简洁,不用if判断,

3.4K20

Django之视图层与模板层

而是会将表单数据按照 k1=v1&k2=v2&k3=v3的格式放到url,然后发送给djangodjango会将这些数据封装到request.GET,注意此 时的request.body为空、无用...GET方法的数据格式, k1=v1&k2=v2,此时django会将request.body的数据提取出来封装到request.POST中方便我们提取 如果form表单提交数据是按照编码格式2,那么...3、json,当ajax采用POST方法提交两种格式的数据时,django的处理方案同上,但是当 ajax采用POST方法提交json格式的数据时,django会将接收到的数据存放于HttpRequest.body...路由的书写方法:url(r'^name/',views.name) 1.4.2CBV CBV引入面向对象的思想对数据进行更高程度的封装。...2.4.1自定义的准备 django支持用户自定义过滤器和标签但前提必须要先执行以下三步: 1.在应用名下新建一个名为templatetags(必须是这个名字)的文件夹 2.在该文件夹内新建一个任意名称的

9.2K10

你想要的Python面试都在这里了【315+道题】

61、是否使用过functools的函数?其作用是什么? 62、列举面向对象带爽下划线的特殊方法,:__new__、__init__ 63、如何判断是函数还是方法?...26、redis数据库默认是多少个db 及作用? 27、python操作redis的模块? 28、如果redis的某个列表的数据量非常大,如果实现循环显示每一个值?...并使用jQuery和XMLHttpRequest对象实现一个ajax请求。 7、如何在前端实现轮训? 8、如何在前端实现长轮训? 9、vuex的作用? 10、vue的路由的拦截器的作用?...以及django中间件的应用场景? 29、简述什么是FBV和CBV? 30、django的request对象是在什么时候创建的? 31、如何给CBV的程序添加装饰器?...110、RabbitMQ如何在消费者获取任务后未处理完就挂掉时,保证数据不丢失? 111、RabbitMQ如何对消息做持久化? 112、RabbitMQ如何控制消息被消费的顺序?

4.5K20

类视图 vs. 函数视图

如果我在代码里面, 显式的调用类视图必须这样做: Python return MyView.as_view()(request) 为了让代码显示更加自然, 有可读性,你可以这个函数分配给一个变量....基于类的通用视图(GV) Django 引入了基于类的通用视图, 来处理 web 常见的用例需求, 比如创建新对象,表单处理,列表视图,分页,归档视图等....#2 观点 「仅使用django.views.generic.View, 不用GV」 此观点认为, View 就足够了, 并且 View 是真正的CBV, 而通用视图则不是真正的 CBV....可以面向对象mixins(多重继承) 单独的类方法处理 HTTP 方法 内置的基于类通用视图 缺点 可读性差 隐式代码流 隐式mixins及父类代码 装饰器的使用需要额外的导入或方法覆盖 选择哪一种都没有对错...但也别放弃学习 OOP, 并使用 CBV 的方式实现非重要项目练手。 对于没有面向对象经验的同学,函数式编程不会觉得代码很低级, 相反一些大佬依然坚持函数式编程。

2.4K10

315道Python面试题,欢迎挑战!

61、是否使用过functools的函数?其作用是什么? 62、列举面向对象带爽下划线的特殊方法,:__new__、__init__ 63、如何判断是函数还是方法?...并使用jQuery和XMLHttpRequest对象实现一个ajax请求。 7、如何在前端实现轮训? 8、如何在前端实现长轮训? 9、vuex的作用? 10、vue的路由的拦截器的作用?...16、列举Http请求状态码? 17、列举Http请求中常见的请求头?...30、django的request对象是在什么时候创建的? 31、如何给CBV的程序添加装饰器?...110、RabbitMQ如何在消费者获取任务后未处理完就挂掉时,保证数据不丢失? 111、RabbitMQ如何对消息做持久化? 112、RabbitMQ如何控制消息被消费的顺序?

3.4K30

Python3面试--300题

61、是否使用过functools的函数?其作用是什么? 62、列举面向对象带爽下划线的特殊方法,:__new__、__init__ 63、如何判断是函数还是方法?...26、redis数据库默认是多少个db 及作用? 27、python操作redis的模块? 28、如果redis的某个列表的数据量非常大,如果实现循环显示每一个值?...并使用jQuery和XMLHttpRequest对象实现一个ajax请求。 7、如何在前端实现轮训? 8、如何在前端实现长轮训? 9、vuex的作用? 10、vue的路由的拦截器的作用?...以及django中间件的应用场景? 29、简述什么是FBV和CBV? 30、django的request对象是在什么时候创建的? 31、如何给CBV的程序添加装饰器?...110、RabbitMQ如何在消费者获取任务后未处理完就挂掉时,保证数据不丢失? 111、RabbitMQ如何对消息做持久化? 112、RabbitMQ如何控制消息被消费的顺序?

3.7K10

python测试开发django-73.django视图 CBV 和 FBV

CBV(class base views) 就是在视图里使用类处理请求,这是面向对象的编程方式。...FBV 模式 FBV(function base views)在views.py文件定义视图函数来处理用户请求,函数通过 if 判断 request.method 请求方式是 GET 还是 POST...自定义的类必须继承 View 父类 提高了代码的复用性,可以使用面向对象的技术,比如 Mixin(多继承) 可以用不同的函数针对不同的 HTTP 方法处理,而不是通过很多if判断,提高代码可读性 CBV...路由系统必须使用 Myview.as_view() 替代视图函数 # views.py from django.shortcuts import render from django.http import...另外通过 CBV 如果想要在执行get或post方法执行其他步骤,可以重写dispatch。

51210

315道Python面试题,欢迎挑战

61、是否使用过functools的函数?其作用是什么? 62、列举面向对象带爽下划线的特殊方法,:__new__、__init__ 63、如何判断是函数还是方法?...并使用jQuery和XMLHttpRequest对象实现一个ajax请求。 7、如何在前端实现轮训? 8、如何在前端实现长轮训? 9、vuex的作用? 10、vue的路由的拦截器的作用?...16、列举Http请求状态码? 17、列举Http请求中常见的请求头?...30、django的request对象是在什么时候创建的? 31、如何给CBV的程序添加装饰器?...110、RabbitMQ如何在消费者获取任务后未处理完就挂掉时,保证数据不丢失? 111、RabbitMQ如何对消息做持久化? 112、RabbitMQ如何控制消息被消费的顺序?

2.6K10

不吹不擂,你想要的Python面试都在这里了【315+道题】

61、是否使用过functools的函数?其作用是什么? 62、列举面向对象带爽下划线的特殊方法,:__new__、__init__ 63、如何判断是函数还是方法?...并使用jQuery和XMLHttpRequest对象实现一个ajax请求。 7、如何在前端实现轮训? 8、如何在前端实现长轮训? 9、vuex的作用? 10、vue的路由的拦截器的作用?...26、django请求的生命周期? 27、列举django的内置组件? 28、列举django中间件的5个方法?以及django中间件的应用场景? 29、简述什么是FBV和CBV?...30、django的request对象是在什么时候创建的? 31、如何给CBV的程序添加装饰器?...110、RabbitMQ如何在消费者获取任务后未处理完就挂掉时,保证数据不丢失? 111、RabbitMQ如何对消息做持久化? 112、RabbitMQ如何控制消息被消费的顺序?

3.5K40

WEB框架本质和第一个Django实例

text/html表示HTML网页。...通常模型对象负责在数据库存取数据。 View(视图)是应用程序处理数据显示的部分。通常视图是依据模型数据创建的前端网页。 Controller(控制器)是应用程序处理用户交互的部分。...用于进行性能突破的缓存系统 专业术语解释   持久化:数据永久的保存的过程称为数据的持久化   ORM:将程序对象[Object]和数据库的表[Relation]建立关联关系[Mapping...视图函数根据客户端的请求查询相应的数据.返回给Django,然后Django把客户端想要的数据做为一个字符串返回给客户端. 4. 客户端浏览器接收到返回的数据,经过渲染后显示给用户....fbv方式请求的过程 用户发送url请求,Django会依次遍历路由映射表的所有记录,一旦路由映射表其中的一条匹配成功了, 就执行视图函数对应的函数名,这是fbv的执行流程 cbv方式请求的过程

1.6K40

不吹不擂,你想要的Python面试都在这里了【315+道题】

61、是否使用过functools的函数?其作用是什么? 62、列举面向对象带爽下划线的特殊方法,:__new__、__init__ 63、如何判断是函数还是方法?...26、redis数据库默认是多少个db 及作用? 27、python操作redis的模块? 28、如果redis的某个列表的数据量非常大,如果实现循环显示每一个值?...并使用jQuery和XMLHttpRequest对象实现一个ajax请求。 7、如何在前端实现轮训? 8、如何在前端实现长轮训? 9、vuex的作用? 10、vue的路由的拦截器的作用?...以及django中间件的应用场景? 29、简述什么是FBV和CBV? 30、django的request对象是在什么时候创建的? 31、如何给CBV的程序添加装饰器?...110、RabbitMQ如何在消费者获取任务后未处理完就挂掉时,保证数据不丢失? 111、RabbitMQ如何对消息做持久化? 112、RabbitMQ如何控制消息被消费的顺序?

3.2K30
领券