需求:
在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