Wondermique

Results 2 comments of Wondermique

导出功能已经过几个月的使用测试,常见的情况都测试可正常使用,Excel 类型由于 Excel 自身限制1048576行,目前超出是做异常处理,后续考虑进行文件拆分。 导出工单内的超时参数,仅对导出工单生效,导出阈值为扫描函数,因此,假设阈值为 80W,实际要导出的数据只有 10 万,但没使用好索引,导致扫描 100W,依旧无法提交导出,对于多表 join 查询,扫描行数是累加的,但实际可能出现笛卡尔积,超时参数则是为了控制此时情况。 若文件本地存储,且为 docker 部署,建议在 docker-compose 文件内添加挂载目录。

> 谢谢你的新功能,能否考虑将写入文件抽象一下,或使用django 的files 功能 https://docs.djangoproject.com/en/5.0/topics/files/ 以保证后续功能的可扩展性,比如说,有用户可能使用对象存储存放导出数据,当前的代码就比较难适应这个需求。 看了你提供的 files 的文档,可以用到如FileSystemStorage类,但似乎没有直接提供 如上传到 oss 这样的功能,存放文件还是要使用阿里云的接口,使用files可以通过 settings.py定义存储路径,我目前是在前端的系统配置页面写了表单,方便用户更改存储方式(如下图),files 也支持指定而非只能读取配置。 我实现上传下载的类StorageControl确实写的太长了,不方便扩展,目前打算将其每一种存储方式(现在是有 sftp、oss 和 local)都拆分成一个子类,父类主要提供通用的参数和功能,后续要扩展新的存储方式,也同样新增子类,部分可用 files 实现的就用 files 去改造(但可能不多),你看是否能满足。 ![image](https://github.com/hhyo/Archery/assets/133197875/d4b5febc-5550-4328-a887-4ff0c531b1b2)