我正在使用需要在每个页面上更改的横幅图片,我想在html模板中设置横幅,这样我正在构建它的人很容易轻松添加新页面。
我在django开发它,但我无法弄清楚如何让它工作,请帮忙!
示例:
的index.html
set image url here
{% extends 'base.html' %}
base.html
<html>
<body>
{% include 'top.html %}
</body>
</html>
的top.html
<div>
<img src="{{ image url }}">
</div>
答案 0 :(得分:0)
我很不理解,但是如果你删除top.html并将其包含在基础中,那么应该会更好:
<html>
<body>
<div>
<img src="{% block url_img %}{% enblock %}">
</div>
</body>
</html>
并在索引中
{% extends 'base.html' %}
{% block url_img %}here images url{% endblock %}
如果您将top.html用于其他目的,请执行相同的操作:
{% extends 'base.html' %}
{% block url_img %}{{ image url }}{% endblock %}
答案 1 :(得分:0)
Django模板语言不允许您设置变量。你可以通过使用块来实现类似的东西。将基本模板更改为:
Faulting application name: MicrosoftEdgeCP.exe, version: 11.0.15063.483, time stamp: 0x595f2577
Faulting module name: RPCRT4.dll, version: 10.0.15063.0, time stamp: 0xcf94c546
Exception code: 0xc00000fd
Fault offset: 0x000000000001539b
Faulting process id: 0x176c
Faulting application start time: 0x01d315f28d6ef0f7
Faulting application path: C:\Windows\SystemApps\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\MicrosoftEdgeCP.exe
Faulting module path: C:\WINDOWS\System32\RPCRT4.dll
Report Id: b6162eec-9330-4481-a33c-b6d4411d9a43
Faulting package full name: Microsoft.MicrosoftEdge_40.15063.0.0_neutral__8wekyb3d8bbwe
Faulting package-relative application ID: ContentProcess
然后覆盖模板中的<html>
<body>
<div>
<img src="{% block image_url %}/default_image.jpg{% endblock %}">
</div>
</body>
</html>
块,例如
image_url
请注意,使用此方法无法使用{% extends 'base.html' %}
{% block image_url %}/images/index.jpg{% endblock %}
,因为您无法覆盖{% include top.html %}
标记所包含的块。