gpt4 book ai didi

django - Django FileField 的替代上传方法

转载 作者:行者123 更新时间:2023-12-02 02:22:27 24 4
gpt4 key购买 nike

我有一些使用 FileField 的 django 模型,并且用户一直在管理界面中上传文件。我们现在遇到一个问题,有些文件很大(1-3G),这使得http上传变得棘手。

有一个“容器”类,然后是带有容器 FK 的"file"类。我在管理 GUI 中使用了内联,使用户更容易(容器类形式,带有文件类内联)

我找到了 FilePathField,我想这对于让用户 scp/rsync 文件传输到服务器然后浏览并向其添加详细信息很有用,但是我如何在管理中获取它?我是否需要构建一个新的表单/ View 来创建对象?有没有什么方法可以以某种方式覆盖自定义管理表单中的模型(从而保留所有免费的管理优点),用文件路径字段替换文件字段?还有其他建议吗?

感谢您的建议!

最佳答案

您提到 FilePathField 可以工作,但需要重新启动网络服务器才能查看新文件。发生这种情况是因为选项被收集到FilePathField.__init__,在导入模块时被调用一次

修复方法是在表单的 __init__ 中重新调用字段的 __init__:

def __init__(self, **kwargs):
super(MyForm, self).__init__(**kwargs)
self.fields['file'].__init__(path)

(这样每次实例化表单时都会扫描目录。)

关于django - Django FileField 的替代上传方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1261300/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com