django上传图片
#上传文件,资源配置MEDIA_URL='/dimples/'MEDIA_ROOT=os.path.join(BASE_DIR,'dimples')2.model
只存储路径
p_w_picpath=models.ImageField(upload_to='p_w_picpath/%Y/%m',default=u'p_w_picpath/default.png',max_length=100)
upload_to=: 指明文件的路径(p_w_picpath/年/月)
3.html中获取图片例如:
{{course_org.p_w_picpath}}只获取了相对地址
正确方式:
a.在前面加` MEDIA_URL `
{{MEDIA_URL}}{{course_org.p_w_picpath}}
b.在前面加/dimples/
data-url="/dimples/{{course_org.p_w_picpath}}"4.配置media内部处理类(setting中)
OPTIONS--->context_processors中添加:
'django.core.context_processors.media'
如下:
'OPTIONS':{'context_processors':['django.template.context_processors.debug','django.template.context_processors.request','django.contrib.auth.context_processors.auth','django.contrib.messages.context_processors.messages','django.core.context_processors.media'],},
会自动将MEDIA_URL注册到html中
5.配置urlsfromdjango.views.staticimportserve
配置(上传文件的访问处理函数) dimples的urls:
url(r'^dimples/(?P<path>.*)$',serve,{'document_root':MEDIA_ROOT}),
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。