有没有办法修改Django FileField使用的存储后端?

时间:2010-08-12 06:42:44

标签: django django-models

我正在保存一些使用Django FileField设置的上传文件,以使用DefaultStorage后端。在文件上传后的某个时刻,我想移动到另一个存储后端,即更改FileField的storage属性(在将源文件的内容保存到之后的obv。)新的存储位置)。简单地更改FileField实例存储似乎不起作用。

这是否可以在不使用第二个FileField模型attr的情况下被告知使用不同的存储后端?理想情况下,我不想在字段上加倍,并将开关放在引用文件的所有模板中。

谢谢!

1 个答案:

答案 0 :(得分:0)

似乎与storage关联的FileField未写入数据库,因此在特定字段实例上设置它不会持久存在。相反,它是从与模型关联的FileField实例中读取的(因此,如果您有file = models.FileField(..., storage=some_storage),则每次Django设置模型时都会将其重置为some_storage