Python Django-如何使用用户上传的图像加载站点创建的图像?
对于用户上传的任何图像,我都会生成一个缩略图。用户上传的图像和缩略图是这样存储的Python Django-如何使用用户上传的图像加载站点创建的图像?,python,django,image,python-imaging-library,Python,Django,Image,Python Imaging Library,对于用户上传的任何图像,我都会生成一个缩略图。用户上传的图像和缩略图是这样存储的 media_cdn (folder) -user_name_1 (folder) -user_name_2 (folder) --post_1_title_slug (folder) ---300x180 (folder) ----300x180_user_uploaded_image_1.png ---user_uploaded_image_1.png --post_2_title_
media_cdn (folder)
-user_name_1 (folder)
-user_name_2 (folder)
--post_1_title_slug (folder)
---300x180 (folder)
----300x180_user_uploaded_image_1.png
---user_uploaded_image_1.png
--post_2_title_slug (folder)
-user_name_3 (folder)
因为我在模型中使用ImageField,所以我可以在模板中轻松地使用{{{appname.image.url}
,但这将加载上载的图像。我想加载缩略图
我在stackoverflow上搜索,大多数人都说使用{{MEDIA\u URL}}
,比如
我倾向于{{MEDIA_URL}}
,因为将来,该网站将根据同一用户上传的图像生成更多图像
我现在正在用这个
<img src='{{ MEDIA_URL }}/{{user.username}}/{{ upload.slug }}/300x180/300x180_{{ upload.get_filename }}'>
{{MEDIA\u URL}}
未给出正确的URL
仅供参考
get_filename
来自models.py,我在那里写了这个来获取文件名
def get_filename(self):
return(os.path.basename(self.image.name))
我怎样才能做到这一点?
我正在使用Django 1.11.5和枕头4.2.1
def get_filename(self):
return(os.path.basename(self.image.name))