最近几天研究了一下django ORM查询优化,响应时间慢问题,主要原因还是代码规范和方法使用不当,如果正确使用相应方法,大部分的性能问题都是可以解决,记录如下: Django QuerySet懒执行只有访问到对应的数据时,才会访问数据库,如果再次读取查询到的数据时,不会触发访问

阅读更多»

说明主要说明类的特殊方法(也叫魔法方法),了解使用场景和方法,使用时方便查询 具体说明创建实例和销毁__new____init____del__1234567891011121314151617181920class Foo01: def __new__(cls, *arg

阅读更多»

背景Django默认使用username字段来进行认证,而现在对于多数平台来说,更多的通过email或手机号来进行认证,自定义认证字段就是解决这类问题。 说明Django中在底层,维护着”authentication backends”列表,当调用django.contrib.a

阅读更多»

说明 使用描述符时,实例对象的属性访问会触发描述符的__get__方法 使用描述符时,实例对象的属性赋值会触发描述符的__set__方法 通过obj.__dict__[xxx]=yyy 赋值会跳过描述符 没有__get__方法的覆盖描述符,给对象的属性赋值会触发__set__方法

阅读更多»

描述符说明- 只要是定义了__get__()、__set()__、__delete()__中任意一个方法的对象都叫描述符 - 描述符是一个具有绑定行为的对象属性,其属性的访问被描述符协议方法覆写 - 通常来说Python对象的属性控制默认是这样的:从对象的字典(__dict__)

阅读更多»

__getattr__ 方法__getattr__(self, name) 作用仅当没有指定名称name的属性时才调用__getattr__方法123456789101112131415161718192021222324252627282930from collections

阅读更多»

背景Django自带的权限系统为model层面的,也就是说给某个用户或者组对应的model权限,拥有了操作该model的权限,不能更精细化的控制权限,如对象级别的权限 现在引用了基于url的权限系统,可以控制用户访问一个接口的不同方法 ,可以很方便的控制权限;如:用户对于某个接口

阅读更多»

ELK说明 Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等 Logstash是一个完全开源的工具,他可以对你的日志进行收集、分析,并将其存储供以后使用(如,搜索)

阅读更多»

ttxsgoto

天天向上goto