gpt4 book ai didi

python - Django ImageKit : How to rename uploaded images?

转载 作者:行者123 更新时间:2023-12-01 04:34:40 24 4
gpt4 key购买 nike

我的用户模型中有一个照片字段,我想知道如何将上传的图像重命名为用户 ID?

这是我现在所拥有的,它将保留图像的原始文件名:

photo = ProcessedImageField(upload_to='form_photos',
processors=[Adjust(color=0),],
format='JPEG',
options={'quality': 60},
null=True)

谢谢!

最佳答案

您可以更改 upload_to 值以实现如下功能

def upload_to_id_image(instance, filename):
extension = splitext(filename)[1].lower()
salt, hashed = generate_sha1(instance.id)
path = 'profiles/%(id)s_%(date_now)s_' % {
'id': instance.user.id,
'date_now': get_datetime_now().date().strftime("%Y%m%d")}
return '%(path)s%(hash)s%(extension)s' % {'path': path,
'hash': hashed[:16],
'extension': extension}

然后,您应该像这样更改代码,

photo = ProcessedImageField(upload_to=upload_to_id_image,

当然你可以删除哈希码。但为了文件安全,使用散列文件名更好。

关于python - Django ImageKit : How to rename uploaded images?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31930369/

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