随笔分类 -  Django

摘要:什么情况下使用缓存 1.不经常更新的数据 2.用户经常访问的一些页面,比如商品列表页、商品详情页等 3.用户经常修改的一些操作:购物车、订单中心等 关于DRF缓存扩展可以参考文档:http://chibisov.github.io/drf-extensions/docs/#caching 安装 使用 阅读全文
posted @ 2018-08-14 22:21 短毛兔 阅读(1625) 评论(0) 推荐(0)
摘要:按照错误提示信息,找到以下代码 input_html就是报错的代码,因为input_html里只有一个元素,从报错信息里也能找到input_html的值如下: 修改后代码: 即可。 阅读全文
posted @ 2018-07-07 18:10 短毛兔 阅读(1116) 评论(0) 推荐(0)
摘要:Django包含了一个conenttype应用程序,记录了Django项目中安装的所有模型,为当前项目所有基于Django驱动的model提供了更高层次的抽象接口。 一、概述 ContentTypes应用程序的核心是 django.contrib.contenttypes.models.Conten 阅读全文
posted @ 2018-07-05 23:13 短毛兔 阅读(261) 评论(0) 推荐(0)
摘要:一、缓存简介 1. 在动态网站中,用户所有的请求,服务器都会去数据库进行增删改查,然后取出数据,渲染模板,展示给用户2. 当一个网站用户量过大的时候,每一次的后台请求操作,都会消耗很多的服务器资源,3. 使用缓存一方面可以减轻服务器的压力,另一方面可以更快的响应给用户4. 缓存是将一些常用的数据保存 阅读全文
posted @ 2018-07-05 21:32 短毛兔 阅读(202) 评论(0) 推荐(0)
摘要:url: 当django启动的时候,会调用执行view.BookView.as_view()方法,拿到as_view的返回值view 当用户访问books/的时候,会执行View.view(). 执行APIView.dispatch() APIView.dispatch() request = se 阅读全文
posted @ 2018-06-22 10:22 短毛兔 阅读(436) 评论(0) 推荐(0)
摘要:一、视图类 ModelViewSet 二、执行流程 1. url: 当django启动的时候,会执行view.BookView.as_view()方法:由于as_view()是从ViewSetMixin中继承而来的,所以url会变为: 2.当用户访问books/的时候,会调用执行ViewSetMix 阅读全文
posted @ 2018-06-22 10:08 短毛兔 阅读(6818) 评论(0) 推荐(1)
摘要:一、GenericAPIView GenericAPIView扩展了APIView,为标准列表和详细视图添加了常见的行为。 提供的每个具体通用视图都是一个GenericAPIView或多个mixin类组合在一起而构建的。 例如: BookView视图类继承自: ListModelMixin:用于显示 阅读全文
posted @ 2018-06-20 22:10 短毛兔 阅读(2696) 评论(0) 推荐(0)
摘要:一、手动序列化 model_to_dict():将对象转化成字典的形式: [{"id": 1, "title": "go"}, {"id": 2, "title": "java"}, {"id": 3, "title": "python"}, {"id": 4, "title": "c++"}] m 阅读全文
posted @ 2018-06-19 13:45 短毛兔 阅读(239) 评论(0) 推荐(0)
摘要:在django—CBV源码分析中,我们是分析的from django.views import View下的执行流程,这篇博客我们介绍django Rest Framework下的APIView的源码分析。 一、as_view() 我们还是先从URLconfig中入手,由于BookView是一个基于 阅读全文
posted @ 2018-06-19 10:44 短毛兔 阅读(1608) 评论(0) 推荐(0)
摘要:一、CBV(基于类的视图) 视图是可以调用的,它接受请求并返回响应,这不仅仅是一个函数,Django提供了一些可以用作视图的类的例子,这些允许您通过继承或mixin来构建视图并重用代码。 基本示例 Django提供了基本的视图类,它将适用于广泛的应用程序。所有的视图类都继承自View该类,它处理将视 阅读全文
posted @ 2018-06-19 09:31 短毛兔 阅读(868) 评论(0) 推荐(0)
摘要:1. 依托模型创建表单 ---> ModelForm 如果你正在构建一个数据库驱动的应用程序,那么你很可能会有与Django模型密切相关的表单。 例如,你可能有一个BlogComment 模型,并且你想创建一个让人们提交评论的表单。 在这种情况下,在表单中定义字段类型是多余的,因为您已经定义了模型中的字段。 出于这个原因,Django提供了一个助手类,允许您Form 从Dj... 阅读全文
posted @ 2018-06-12 18:43 短毛兔 阅读(263) 评论(0) 推荐(0)
摘要:一、BoundField BoundField是一个将字段添加数据的一个类,给对应的form字段封装上数据。 比如 :我在我博客网站后台添加一篇文章的时候: Tags和Author都是有数据的,BoundField他将modelform中的字段和model中对应数据进行了封装。 二、BoundFie 阅读全文
posted @ 2018-06-12 16:02 短毛兔 阅读(1395) 评论(0) 推荐(0)
摘要:一、Django admin的执行流程 https://www.cnblogs.com/weihengblog/p/9122509.html 我的博客,介绍了django admin执行流程 二、Xadmin 阅读全文
posted @ 2018-06-04 16:17 短毛兔 阅读(375) 评论(0) 推荐(0)
摘要:一、整体看Admin执行流程 二、admin.site.register django启动的时候,顺序为:先register,然后urls分配 先看看admin.siter.register做了什么 总结: 就是实例化了一个AdminSite类,admin.site 采用的是模板的单例模式 在Adm 阅读全文
posted @ 2018-06-01 17:02 短毛兔 阅读(1008) 评论(0) 推荐(0)
摘要:一、内置模板标签 语法:{% %} 阅读全文
posted @ 2018-05-27 16:29 短毛兔 阅读(239) 评论(0) 推荐(0)
摘要:中间件 中间件介绍 什么是中间件? 官方的说法:中间件是一个用来处理Django的请求和响应的框架级别的钩子。它是一个轻量、低级别的插件系统,用于在全局范围内改变Django的输入和输出。每个中间件组件都负责做一些特定的功能。 但是由于其影响的是全局,所以需要谨慎使用,使用不当会影响性能。 说的直白 阅读全文
posted @ 2018-05-21 14:58 短毛兔 阅读(109) 评论(0) 推荐(0)
摘要:一、Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入的长度和格式等正不正确。如果用户输入的内容有错误就需要在页面上相应的位置显示显示对应的 阅读全文
posted @ 2018-05-18 21:46 短毛兔 阅读(195) 评论(0) 推荐(0)
摘要:cookie Cookie的由来 大家都知道HTTP协议是无状态的。 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不会直接影响后面的请求响应情况。 一句有意思的话来描述就是人生只如初见,对服务器来说,每次的请求都是全 阅读全文
posted @ 2018-05-15 22:23 短毛兔 阅读(1073) 评论(0) 推荐(0)
摘要:一、QuerySet 查询集,类似一个列表,包含了满足查询条件的所有项。QuerySet 可以被构造,过滤,切片,做为参数传递,这些行为都不会对数据库进行操作。只有你查询的时候才真正的操作数据库。意味着QuerySet是惰性执行的 即创建查询集不会带来任何的数据库访问,直到查询集需要求值的时候,Dj 阅读全文
posted @ 2018-05-12 19:26 短毛兔 阅读(1646) 评论(0) 推荐(0)
摘要:一、ORM ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。 ORM在业务逻辑 阅读全文
posted @ 2018-05-10 15:46 短毛兔 阅读(242) 评论(0) 推荐(0)