【问题标题】:Modify Filename Before Saving in Django using model.FileField使用 model.FileField 在 Django 中保存之前修改文件名
【发布时间】:2011-05-20 14:50:29
【问题描述】:

我有一个 model.FileField(upload_to='%Y/%m/%d') 字段。这很好用;但是,我想在保存之前根据用户上传文件的上下文重命名文件。有没有办法在保存之前修改请求对象以完成此操作?

我遇到过有类似问题的人,但答案总是指向 Django 文档。我已经尝试使用文档来解决这个问题,但不能。有人可以提供一些代码来显示热点来解决这个问题吗?

提前致谢。

【问题讨论】:

标签: django-models django-views


【解决方案1】:

您可以使用带有实例和文件名输入并返回路径和文件名的 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)

您可以在函数中更改路径和文件名

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-23
    • 1970-01-01
    • 1970-01-01
    • 2022-01-23
    • 2017-03-24
    • 2021-01-12
    • 2018-11-11
    相关资源
    最近更新 更多