django
python小白努力中
自信,美好,永不止步。
chinacheng2023
展开
-
django中全文检索方案Elasticsearch实现搜索
1. 全文检索和搜索引擎原理商品搜索需求当用户在搜索框输入商品关键字后,我们要为用户提供相关的商品搜索结果。商品搜索实现可以选择使用模糊查询like关键字实现。但是 like 关键字的效率极低。查询需要在多个字段中进行,使用 like 关键字也不方便。全文检索方案我们引入全文检索的方案来实现商品搜索。全文检索即在指定的任意字段中进行检索查询。全文检索方案需要配合搜索引擎来实现。...原创 2019-08-17 09:09:13 · 700 阅读 · 0 评论 -
容器化方案Docker的介绍和安装使用
容器化方案:DockerDocker的目标之一就是缩短代码从开发、测试到部署、上线运行的周期,让我们的应用程序具备可移植性、易于构建、并易于协作。1. Docker介绍Docker中文社区文档 http://www.docker.org.cn/index.htmlDocker 是一个开源的软件部署解决方案。Docker 也是轻量级的应用容器框架。Docker 可以...原创 2019-08-17 09:44:01 · 462 阅读 · 0 评论 -
Haystack扩展建立索引调用Elasticsearch进行搜索
提示:Elasticsearch 的底层是开源库 Lucene。但是没法直接使用 Lucene,必须自己写代码去调用它的接口。思考:我们如何对接 Elasticsearch服务端? 解决方案:Haystack1. Haystack介绍和安装配置1.Haystack介绍Haystack 是在Django中对接搜索引擎的框架,搭建了用户和搜索引擎之间的沟通桥梁。我们在D...原创 2019-08-17 14:14:33 · 696 阅读 · 1 评论 -
JWT的原理和使用
JWT在用户注册或登录后,我们想记录用户的登录状态,或者为用户创建身份认证的凭证。我们不再使用Session认证机制,而使用Json Web Token认证机制。什么是JWTJson web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的...原创 2019-08-17 17:49:18 · 17192 阅读 · 5 评论 -
django中使用事务处理数据
使用事务保存订单数据重要提示:在保存订单数据时,涉及到多张表(OrderInfo、OrderGoods、SKU、SPU)的数据修改,对这些数据的修改应该是一个整体事务,即要么一起成功,要么一起失败。Django中对于数据库的事务,默认每执行一句数据库操作,便会自动提交。所以我们需要在保存订单中自己控制数据库事务的执行流程。1. Django中事务的使用1.Django中事务的使用方案在...原创 2019-08-17 19:20:27 · 664 阅读 · 0 评论 -
django中解决并发问题,悲观锁、乐观锁和任务队列的解决方案
使用乐观锁并发下单重要提示:在多个用户同时发起对同一个商品的下单请求时,先查询商品库存,再修改商品库存,会出现资源竞争问题,导致库存的最终结果出现异常。1. 并发下单问题演示和解决方案解决办法:悲观锁当查询某条记录时,即让数据库为该记录加锁,锁住记录后别人无法操作,使用类似如下语法select stock from tb_sku where id=1 for update;SKU...原创 2019-08-17 20:03:31 · 2927 阅读 · 0 评论 -
DRF框架 定义序列化器ModelSerializer的使用
序列化器的作用:进行数据的校验对数据对象进行转换serializer不是只能为数据库模型类定义,也可以为非数据库模型类的数据定义。序列化器:将查询的后端数据转换成JSON类型传递前端反序列化器:获取前端JSON数据,验证数据后保存或更新数据,得到新的数据对象,并保存到数据库中。创建Serializer对象定义好Serializer类后,就可以创建Serializer对象了。Seri...原创 2019-08-18 10:49:50 · 611 阅读 · 0 评论