Django_上传图片和模版获取图片

需求:

  在Django中,上传图片,存入数据库中的文件的路径,而不是图片本身,也就是说,图片等数据静态文件都可以放到第三方服务器上,我想在把图片保存到Django本地项目中,并可以通过Django自带的server,让模版可以取到图片

那,如何解决?

  1. setting中配置图片上传和模版获取图片的根地址

# 配置图片上传和服务器传输图片的根地址
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

  2. 如何url中注册这个服务

from django.conf.urls import url

# 导入server服务
from django.views.static import serve

from MxOline.settings import  MEDIA_ROOT


urlpatterns = [
    ...
    # 前端加载图片寻找路径
    url(r'^media/(?P<path>.*)$', serve, {'document_root': MEDIA_ROOT}),
]

  3. 模版中通过字符串的拼接,获得图片完整的src地址,从而从Django服务中获取静态图片

 <img width="280" height="350" class="scrollLoading" src="{{ MEDIA_URL }}{{ course.image }}"/>

  图片静态文件,js、css也是静态文件,当项目上线的时候,Django会把静态文件路径失效,并不提供传输服务

  文章地址:http://www.cnblogs.com/2bjiujiu/p/7464628.html

原文地址:https://www.cnblogs.com/2bjiujiu/p/7464665.html