
Django
士多碧莉
不要做程序猿,要做工程狮,吼吼
展开
-
django 查询优化之 select_related 和 prefetch_related
QuerySet有两个属性,ordered和db;ordered:返回语句是否排序。True or False。db:返回连接的数据库,默认 "default" 数据库。可以使用链式调用组成查询语句,返回new QuerySet对象的方法有:filter() exclude() annotate() alias() order_by() reverse() distinct() values() values_list() dates...原创 2021-12-21 12:49:23 · 1265 阅读 · 0 评论 -
Django QuerySet API 文档阅读(1):懒查询
Django查询返回的数据集对象就是QuerySet,实际上Django是懒查询的,只有当你进行一定的操作时才会到数据库进行查询,否则其实只是查询语句的拼接。那么进行什么操作后,会产生实际的查询呢?Django给出了解释:①遍历数据集;②对数据集进行切片操作;③序列化或缓存数据集;④使用repr方法打印查询集时;⑤使用len方法获取查询集长度时;⑥使用list方法转换为列表时;⑦判断查询集布尔值时;...原创 2021-11-22 15:20:56 · 632 阅读 · 0 评论 -
Django应用启动时如何执行一波初始化添加数据?只需要简单的三步
需求: 希望在运行项目前进行一些数据初始化,包括但不限于一些全局变量、数据库等。实现方法:很简单,只需要三步(1)确保app被注册到settings文件中的install_apps中:(2)在该app的__init__文件中设定default_app_config:default_app_config = 'apps.home.apps.HomeConfig'(3)在该app的apps文件中,继承AppConfig类;重写name属性,重写ready方法;其中na...原创 2020-08-26 11:02:52 · 5641 阅读 · 7 评论 -
django国际化详细步骤 本人亲测可行
做项目的时候需要做多语言版本,记录一下一面后续忘记首先,修改settings和url 1、增加一个中间件 : 'django.middleware.locale.LocaleMiddleware', 2、添加增加LANGUAGES和LOCAL_PATHSLANGUAGES = ( ('zh-hans', '中...原创 2019-12-17 10:32:48 · 862 阅读 · 1 评论 -
使用redis存储历史浏览记录
使用redis存储历史浏览记录核心是分析流程1.什么时候需要添加历史浏览记录?访问具体商品详情页面时2.什么时候需要获取历史浏览记录?根据具体情况而定3.存储在哪?redis数据库,如果使用普通的关系型数据库,经常对数据库进行读写,效率比redis低得多4.历史浏览记录的存储格式?这里设计一个用户存储一条记录,使用list存储history_用户id : [SKUid1, SK...原创 2019-04-21 20:59:18 · 6718 阅读 · 9 评论