目录

Nocobase如何优雅的设置动态的自定义存储路径

https://www.ffeeii.com/ffeeii.com/2025/09/nocobase-path.jpg

Nocobase的路径是 1 个固定值,如何优雅的设置动态的自定义存储路径。

背景

Nocobase是 1 款非常棒的低代码平台(无代码开发平台),飞哥常用它用于管理后台的数据维护和业务管理。 目前Nocobase的文件管理器支持本地存储、阿里云 OSS、亚马逊 S3、腾讯云 COS,设置界面如下:

https://www.ffeeii.com/ffeeii.com/2025/09/nocobase-path1.png

其中的路径是 1 个固定值,在实际的项目中,为了方便文件管理,一般会将文件按照 some dirname/年/月/日 的格式进行存储管理,比如 files/2025/09/17 进行存储,明天的存储目录为 files/2025/09/18 等。

解决办法

利用Nocobase的工作流

https://www.ffeeii.com/ffeeii.com/2025/09/nocobase-path2.jpg

设置 1 个每天定时执行 SQL 语句,自动更新 path 的值,比如 SQL更新 path=files/年/月/日 的格式,并指定了 id=2的配置,可根据storages表中实际的 id 更新自己的 SQL

https://www.ffeeii.com/ffeeii.com/2025/09/nocobase-path3.jpg

SQL的例子

UPDATE `storages` 
set `path` = CONCAT('files/', DATE_FORMAT(NOW(), '%Y/%m/%d'))  
where id=2 limit 1;

https://www.ffeeii.com/ffeeii.com/2025/09/nocobase-path4.jpg

总结

Nocobase的工作流可以在不入侵代码的前提下,可以动态更新文件存储的路径。