图像不出现 Django 模板
Posted
技术标签:
【中文标题】图像不出现 Django 模板【英文标题】:Image does not appear Django template 【发布时间】:2014-08-27 10:26:45 【问题描述】:我正在尝试将一些图像加载到模板中,但它仍然显示为断开的链接 我的文件和目录如下 1.views.py
def home(request):
#template = loader.get_template("polls/home.html")
return render_to_response('polls/home.html',
context_instance=RequestContext(request))
2.urls.py
urlpatterns = patterns('',
#url(r'^applications/', include('polls.urls')),
url(r'^admin/', include(admin.site.urls)),
(r'^', include('polls.urls')),
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
3.home.html
% load staticfiles %
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>psdtowebSimpleWebsiteTemplate.psd</title>
<link href="% static 'C:\Users\omars_000\Desktop\mytask\polls\templates\polls\styles.css' %" rel="stylesheet" type="text/css">
</head>
<body>
<div id="background">
<div id="background"><img src="MEDIA_URL/Capture.png"></div>
</body>
</html>
4.settings.py
MEDIA_ROOT = os.path.join( PROJECT_DIR, 'media')
MEDIA_URL = '/media/'
STATIC_ROOT = ''
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(PROJECT_DIR, "static"),
'/var/www/static/',
)
知道为什么它不起作用吗?我检查了很多问题,但到目前为止没有任何帮助。
【问题讨论】:
如果你尝试访问<img src="MEDIA_URL/Capture.png">
生成的URL,你会得到一个有效的URL吗?
@karthikr 是的,它是一个有效的 url,并且图像出现在浏览器中,但如果是模板,它似乎链接断开
好的..检查这个答案:***.com/a/1235542/1628832(你的 URL 模式)
@karthikr 已经检查过了,仍然是同样的问题。
【参考方案1】:
您的MEDIA_URL
已经有一个斜杠。您在<img src="MEDIA_URL/Capture.png">
中添加另一个大多数浏览器不在乎,但也许您的不在乎。
【讨论】:
【参考方案2】:知道了。 在 home.html 中我固定如下:
<div id="background"><img src="% static "C:\Users\omars_000\Desktop\mytask\mytask\media\images\background.png" %""></div>
在 settings.py 中,我添加了我将在模板中使用的图像的位置,如下所示:
STATICFILES_DIRS = (
'C:\Users\omars_000\Desktop\mytask\mytask\media\images',
'C:\Users\omars_000\Desktop\mytask\mytask\media',
)
【讨论】:
以上是关于图像不出现 Django 模板的主要内容,如果未能解决你的问题,请参考以下文章