我可以使用FileField来处理文件,但可以将其存储在MEDIA_ROOT/MEDIA_URL下的某个地方而不是ojit_code的下一个地方。

寻求确保其不可下载;尽管拒绝读取权限可以解决问题,但这里还是希望有更好的东西...像是一个完全不同的目录。

最佳答案

有几种方法可以做到这一点。

首先,您可以查看Django文档中的handling uploaded files。如果仔细阅读,基本上可以在 View 中处理表单的同一部分中处理文件的上载。

另一种选择,我认为更好的选择是使用custom file storage system。您可以非常简单地使用现有地址作为基础,但是只需更改位置,然后将其用作FileField中的参数即可。例如:

from django.core.files.storage import FileSystemStorage

my_store = FileSystemStorage(location='/some/other/dir')

class SomeModel(models.Model):
      file = models.FileField(storage=my_store)

希望对您有所帮助!

关于django - 保存FileField文件是否在MEDIA_ROOT以外的其他地方上传?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1736298/

10-12 21:13