我有一个 model.FileField(upload_to='%Y/%m/%d') 字段。这很好用;但是,我想在保存文件之前根据用户上传文件的上下文重命名文件。有没有办法在保存之前修改请求对象以完成此操作?
我遇到过有类似问题的人,但答案总是指向 Django 文档。我曾尝试使用文档解决这个问题,但不能。有人可以提供一些代码来显示热点来解决这个问题吗?
提前致谢。
最佳答案
您可以将函数用于upload_to 值与实例和文件名输入并返回路径和文件名
例如:
def upload_to_func(instance, filename):
now = datetime.now()
return os.path.join(str(now.year), str(now.month), str(now.day), filename)
field_x = model.FileField(upload_to=upload_to_func)
您可以在函数中更改路径和文件名
关于django-models - 使用 model.FileField 在 Django 中保存之前修改文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4360514/