0

我有一个 Django 应用程序,可以在主页上显示用户上传的图像。我使用 filepicker.io 来处理上传,然后将它们存储在我的 Amazon S3 存储桶中。

问题是,当我尝试在线提供它们时,它们没有正确显示,b/c 文件选择器在上传后在文件名中添加了一个唯一键。

即上传的文件名为:milkshake.jpg。

使用文件选择器上传到 S3 后,文件名为:97oj3Y12TIWylfhwlqtT_milkshake.jpg

示例文件托管在此处:https ://s3.amazonaws.com/mrt-static/97oj3Y12TIWylfhwlqtT_milkshake.jpg

单击站点上的图像时,它加载的 URL 是:https ://s3.amazonaws.com/mrt-static/media/milkshake.jpg

如何在我的网站上提供此服务?下面的代码

#models.py
class Movie(models.Model):
poster          = django_filepicker.models.FPFileField(upload_to='movie_poster')
#also, not uploading to the folder in the bucket (called movie_poster), just uploading into the bucket

#home.html
<img src = "{{ MEDIA_URL }}{{ movie.poster }}">

#settings.py
MEDIA_URL = 'https://s3.amazonaws.com/mrt-static/'
4

1 回答 1

2

在模板代码中执行此操作的正确方法是:

<img src = "{{ movie.poster.url }}">
于 2012-11-14T02:02:31.453 回答