windows系统下,删除附件表里的图片时,oss远程存储报错oss文件删除
buildadmin2.1.1版本,windows系统下,删除附件表里的图片时,oss远程存储报错:'图片文件url' object name is invalid,查找后发现app/common/model/Attachment.php的onAfterDelete模型事件里,没有对附件表的url进行处理就调用Event::trigger('AttachmentDel', $model);
windows系统下DIRECTORY_SEPARATOR返回反斜杠\,导致附件表的图片url路径是反斜杠\的字符串,建议在Event::trigger('AttachmentDel', model);之前进行url处理,model->url = str_replace("\",'/',$model->url);
之前上传后图片url都是/斜杠的,更新程序后现在都是\斜杠了,也是因为Filesystem::fsFit函数处理的原因,\斜杠的url发给前端可能还需要处理下才正常显示,前端传给后端时有时也需要处理下,感觉还不如Filesystem::fsFit函数统一都转为/斜杠省事一些,一点小建议,或许理解不到位,供大佬参考
请先登录
Filesystem::fsFit
本身是没有问题的,对文件路径的处理也没有问题,对url
进行处理时使用它就有点问题了新版本文件上传使用了多驱动设计,我们正在逐一排查和测试,url将统一使用
/
分割,感谢您的返馈~收到 感谢大佬 自己开发的完整应用插件快完成了 开发快半年了 期待上线 希望buildadmin生态越来越好
感谢支持~
- 1
前往