删除 Django-Storages S3 中的默认文件名

发布于 2024-11-27 11:34:58 字数 224 浏览 3 评论 0原文

我将 django-storages 与 amazon S3 一起使用,并使用以下方式上传图像文件:

models.ImageField(upload_to="img=%Y-%m-%d", max_length=256, blank=True, null=True)

但是,当文件上传到 S3 时,它的末尾会附加原始文件名。我如何摆脱它并替换它,用一些随机散列代替?

I'm using django-storages with amazon S3, and uploading image files with:

models.ImageField(upload_to="img=%Y-%m-%d", max_length=256, blank=True, null=True)

When the files are uploaded to S3 however, it has the original file name attached at the end. How do I get rid of that and replace it, with say some random hash instead?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

鹿童谣 2024-12-04 11:34:58

提供可调用而不是字符串upload_to。可调用对象将传递正在保存的实例和文件名,并且必须返回完整路径,包括文件名——因此您可以选择不使用原始文件名。 (但是,您必须使用 datetime.date.today() 自己调用 strftime)。

Supply a callable instead of a string to upload_to. The callable will be passed the instance being saved, and the filename, and will have to return the full path, including the filename -- so you can choose not to use the original filename. (You'll have to call strftime yourself with datetime.date.today(), however).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文