自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (3)
  • 收藏
  • 关注

原创 Flask中使用flask-sqlalchemy时急切加载(预加载,类似django中的select_related和prefetch_related方法)减少sql对其优化

回想一下,我们之前演示了延迟加载操作,当我们访问 a 的User.addresses集合User并发出 SQL 时。如果你想减少查询的数量(在很多情况下是显着的),我们可以对查询操作应用一个急切的负载。这三个通常通过称为查询选项的函数调用,这些函数Query通过该方法为我们希望如何加载各种属性提供额外的说明Query.options()。加载一组对象及其相关集合的一个不错的选择是selectinload()选项,它发出第二个 SELECT 语句,完全加载与刚刚加载的结果关联的集合。

2022-09-02 14:58:39 407 1

原创 后端开发解决数据库表锁的问题

Navicat 或其他类似工具中执行以下代码:下面展示一些 内联代码片。SHOW PROCESSLIST根据查询的信息(观察信息中的ip 等信息是否符合)var foo = 'bar';

2022-05-17 09:35:36 182

原创 DRF中關於viewset中create()和serializers中的create及perform_create

drf中視圖中的create方法和序列化器中的create方法的關係

2022-04-26 12:20:19 850

原创 drf文件上傳下載示例

model.pyfrom django.db import models# Create your models here.class FileModel(models.Model): file_name = models.CharField(max_length=50, verbose_name='桶名', help_text='桶名') file_path = models.CharField(max_length=200, default='', verbose_name='文

2022-04-21 16:51:10 826

原创 drf使用modelviewset對user表(繼承自AbstractUser或者自帶user表)的注意

drf創建用戶視圖集注意

2022-04-21 13:55:01 900

原创 minio的搭建一些踩坑及使用docker多机集群部署minio

最近在调研做文件存储系统对于minio的搭建一些踩坑及使用docker多机集群部署minio代码粘上第一种多机集群部署:docker run -d --name minio --restart=always --net=host -e "MINIO_ROOT_USER=admin" -e "MINIO_ROOT_PASSWORD=admin123456" -v /data/minio2/data1:/data1 -v /data/minio2/data2:/data2 -v /home/config:

2021-10-28 13:29:06 294

原创 关于使用drf-yasg中的swagger实现能够上传文件的测试功能

django更改存储方式,实现连接sftp上传文件到其他服务器下面只是简单地实现方法(demo),具体内容视自己需求具体使用关于使用drf-yasg中的swagger实现能够上传文件的测试功能需要在视图文件中使用解析器,为了更改上传文件的头部信息,重点在’parser_classes’ 详情,可以参考drf-yasg的git中issues,有相关内容,安装django-storages:​ (django-storages封装了对python连接sftp的连接)pip install djang

2021-09-18 17:00:13 584

原创 DRF中配置drf-yasg来使用swagger

DRF中配置drf-yasg来使用swagger简单使用,具体配置根据项目需求,安装drf-yasg并注册到app省略在settings.py中做如下配置# -----------------------------------------swagger配置-------------------------------------------SWAGGER_SETTINGS = { 'LOGIN_URL': '/api-auth/login', 'LOGOUT_URL': '/api

2021-08-18 21:04:39 894

原创 2021-07-29

result = serializers.SerializerMethodField()def get_result(self, row): pass#**使用此方法获取关联关系的其他字段时,会每次都查询,造成查询语句过多,使用**def to_representation(self, instance): data = super().to_representation(instance) data['result'] = result.name if result.name else ''

2021-07-29 16:42:09 57

原创 2021-07-15

在使用django时,重新迁移数据库表时,出现1146大部分解决办法是删除迁移表的记录和迁移文件,但是在操作之后还是会报1146,在django3.0.8碰到,注释掉model.py的所有使用到的表的逻辑代码在迁移即可成功,在提示1050报错(django中在model层删除表/修改表中字段的类型,出现问题,删除数据库中的表,去迁移表删除对应app的迁移记录,去model修改,重新迁移,将逻辑中所有相关的表的代码注释掉,否则报11461050报错:python manage.py migrate my

2021-07-15 16:39:08 54

原创 2021-07-10

在使用python中的日志模块时会出现日志文件里的记录成线性增加(第一条记录写入一条,第二条记录写入两条…一次增加的情况)在使用python中编写win服务的模块及ThreadingTCPServer模块时遇到上述情况在logger方法中增加logger.handlers.clear()即可解决线性增加问题,部分代码如下:def _getLogger(): logger = logging.getLogger('[TCP]') # 添加语句防止重复写入日志内容 logger.h

2021-07-10 13:28:19 97

原创 2021-06-26

python中关于logging模块的使用,为代码增加写入日志(工作开发必备)代码如下:def getLogger(): # 获取一个记录器 logger = logging.getLogger('test') # 创建文件夹名称为log的文件夹 dirpath = path.dirname(__file__) + '\\log\\' # 为logger指定handler让他知道怎么处理日志,输出到哪里,日志的文件名字为test.log handler =

2021-06-26 16:13:56 65

原创 2021-06-22

Django查询优化–prefetch_relatedprefetch_related使用案例class A(BaseModel): bu = models.ForeignKey(Bu, on_delete=models.PROTECT, related_name='bu_tpmbase', db_constraint=False, verbose_name='BU', help_text='BU')....class B(models.Model): tpm_base=models.Forei

2021-06-22 13:42:54 55

flask-restx及flask资料

flask查询技巧及flask-restx的使用

2022-09-23

drf使用及虛擬環境使用

drf

2022-07-28

linux+docker 命令

linux+docker 命令

2022-04-23

Git使用1111111.pdf

Git使用1111111.pdf

2021-07-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除