03 2023 档案
摘要:一、为什么要用bulk_create和bulk_update 以创建1万个对象为例,相比save() 循环和save() 事务,bulk_效率是save()循环保存的百倍,是事务处理的近10倍: # 创建model(MyModel),此处省略 # 用for循环挨个创建,共花费36秒 for i in
阅读全文
摘要:一、排序用法 from rest_framework.filters import OrderingFilter class BookView(ModelViewSet): queryset = Book.objects.all() serializer_class = BookSerializer
阅读全文
摘要:1.使用序列化器进行反序列化时,需要对数据进行验证后,才能获取验证成功的数据或保存成模型类对象。 2.在获取反序列化的数据前,必须调用is_valid()方法进行验证,验证成功返回True,否则返回False。 3.验证失败,可以通过序列化器对象的errors属性获取错误信息,返回字典,包含了字段和
阅读全文
摘要:1、TPS: Transactions Per Second,意思是每秒事务数。一个事务是指客户端向服务器发送请求然后服务器做出反应的过程,具体的事务定义,可以是一个接口、多个接口、一个业务流程等等。以单接口定义为事务举例,每个事务包括了如下3个过程: (1)向服务器发请求 (2)服务器自己的内部处
阅读全文
摘要:1.查询结果转json django查询数据返回的是可迭代的queryset序列,如果不习惯这种数据,可以用serializers方法转成json数据,更直观。 返回json数据,需要用到JsonResponse。django查询数据库返回json有3种方法: serializers转json mo
阅读全文
摘要:Django模型 Django对各种数据库提供了很好的支持,包括:PostgreSQL、MySQL、SQLite、Oracle。Django为这些数据库提供了统一的调用API,可按需选择不同数据库。 Django模型使用自带的ORM(对象关系映射Object Relational Mapping)用
阅读全文
摘要:serializers.SerializerMethodField和钩子方法结合,可以实现对ModelSerializer类的一些字段进行二次加工 class tbl_group_case(models.Model): STATUS_NORMAL = 0 STATUS_FLIA = 1 STATUS
阅读全文
摘要:定位到报错文件base.py 解决步骤: 第一步:按照报错的路径打开两个文件 发现python3.10版本的collections变成了_collections_abc 第二步:去base文件修改collection为_collections_abc,job文件修改collection为_colle
阅读全文
摘要:定位到报错文件job.py 解决步骤: 1. cd /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pygal 2. vim _compat.py 3. from collections
阅读全文
摘要:.gitignore文件是在git提交的时候用来屏蔽某些你不想提交上去的文件。 项目开发过程中,有时候不想把一些文件(如中间文件/编译文件等)提交到git上。这个时候就由.gitignore文件来筛选出不想提交的文件。所筛选的文件/夹将不会被追踪(tracked),push的时候也不会上传到git上
阅读全文
摘要:安装MySQLclient django配置数据库 安装驱动 mysql,mariadb,django官方推荐的驱动程序mysqlclient。 windows环境 在网站https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient下载与python
阅读全文