您的位置:首页 > 编程语言 > Go语言

django2上传的图片打不开、图片不显示路径问题解决办法

2019-03-22 11:30 309 查看

python版本:python 3.7.0
Django版本:2.1.7
Pycharm版本:Pycharm2018.3.2 x64
在models.py里设置的图片上传字段如下

thumbnail = models.ImageField(upload_to=image_upload_to, max_length=255, blank=True, null=True)

image_upload_to函数定义如下:

def image_upload_to(instance, filename):
ext = filename.split('.')[-1]
filename = '{}{}.{}'.format(time.strftime('%Y%m%d'), uuid.uuid4().hex[:6], ext)

return os.path.join("thumbnail", filename)

在后台可以上传成功,但是图片打不开,图片不显示。

在settings.py设置好:

MEDIA_ROOT = os.path.join(BASE_DIR, 'static', 'images')
MEDIA_URL = '/media/'

综上这样设置,那么我的图片会存在/static/images/thumbnail 下。
图片URL路径为:http://localhost:8000/media/thumbnail/201903216764c3.jpg
但是图片打不开,图片不显示。

在urls.py里增加:

from django.urls import path, re_path
from django.conf import settings
from django.views.static import serve

在urls.py里的urlpatterns内增加:

re_path(r'^media/(?P<path>.*)$', serve, {"document_root": settings.MEDIA_ROOT}),

OK,在试试打开图片,可以打开了。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐