Django使用update更新数据无法触发post_save信号的解决方法

背景在项目开发中发现,通过MyModel.objectes.filter(xxx=xxx).update(xxx=xxx)更新数据时,无法触发Django自带的post_save信号,官方的解释是必须是save操作才能触发post_save(update不能触发)但考虑到数据库并发情况又必须要使用MyModel.objectes.filter(xxx=xxx).update(xxx=xxx)...

django,bug记录 2023-02-01 PM 28次 0条

Django使用ORM查询当前gps位置附近的数据

问题根据用户的当前位置,和根据数据库内数据的gps信息,查询用户附近的数据并按距离排序。如果用mysql实现是很容易的,可参考另一篇文章:https://www.qinyu.cc/archives/215.html用Django的ORM来查询,个人总结了以下两种比较方便的方式:方法1使用extra,示例如下:dis = 'round(st_distance_sphere(point(%s,%...

django,数据库,技术 2022-12-13 AM 38次 0条

Django使用DRF默认datetime时间有T字符的解决方法

背景Django使用DRF开发时,datetime时间格式返回给前端默认中间有个T字符,如2022-12-03T15:00:00解决方法在settings.py中增加如下配置:REST_FRAMEWORK = { 'DATETIME_FORMAT': "%Y-%m-%d %H:%M:%S", }参考http://wjhsh.net/gcgc-p-14024909....

django 2022-12-01 PM 36次 0条

drf中serializer传参

方法class FirstModelSerializer(serializers.ModelSerializer): secondModel = SerializerMethodField() class Meta: model = FirstModel fields = '__all__' def g...

django 2022-11-15 PM 32次 0条

drf局部字段修改

解决方法partial设置为True(默认是False)ser = BookModelSerializer(instance=obj,data=new_request_data,partial=True) if ser.is_valid(): obj = ser.save()参考https://www.lmlphp.com/user/16758/article/item/582792/

django 2022-11-12 PM 49次 0条

django3中from django.conf.urls import url报错

django.conf.urls.url()在 Django 3.0 中已弃用,并在 Django 4.0+ 中删除。解决方法from django.urls import re_path或from django.urls import re_path as url

django 2022-05-12 PM 112次 0条

Django使用makemigrations migrate迁移数据库不生成表的解决方法

问题django 使用以下命令:python manage.py makemigrations python manage.py migrate发现只生成django自带的表,而没有生成业务表解决方法检查models.py所在app中是否缺少migrations目录,如果缺少,需要创建该文件夹。没有这个文件夹则不能生成自己新建的表。项目结构如下:my_app migrations ...

django,bug记录 2022-04-05 AM 130次 0条

django使用channel时操作数据库过一段时间后报错django.db.utils.InterfaceError: (0, '')

背景使用django的channel来实现websocket在websocket通信时后台操作了数据库modelschannel使用的是异步模式(async)运行一段时间后报错django.db.utils.InterfaceError: (0, '') 解决方法将数据库ORM操作放在独立函数里,并加上装饰器@database_sync_to_async,调用时加上await即可原来clas...

Python,django,bug记录 2022-03-19 PM 142次 0条