【发布时间】:2023-04-11 04:32:01
【问题描述】:
有没有办法在项目目录之外的 Django 中上传文件?
我正在尝试通过 Django 中的 FileField 从前端 (Next.js) 上传文件/图像,并将其保存在 Next.js 项目目录的公共文件夹中,因为我的所有图像都来自该文件夹.
在这种情况下,Django 和 Next 是服务器上的同级文件夹。
如果我尝试通过 FileField 上传 Django 项目文件夹上方的任何内容,我会收到错误消息:
Detected path traversal attempt...
我可以使用 FileSystemStorage,但这不应该在生产中使用。
如何通过django将文件上传到项目目录外的文件夹,并成功放到Next.js公用文件夹中?
【问题讨论】:
-
请注意,在运行时添加到
public文件夹的文件不会由 Next.js 提供。请参阅 Next.js Static File Serving。 -
那么为了能够在运行时上传,我只能通过 CDN 来实现吗?还有什么其他更简单的选择?