我准备了Django html模板,它使用数据库中的模板变量来覆盖页面的标准css。这将允许我使用用户特定的字体颜色。
我让它适用于字体颜色,但是在加载用户特定图像时出错。请参阅以下代码:
<!-- Logo -->
{% load static %}
<img class="LogoPos img-responsive"
src="{% static 'img/{{ClubSettingsApplied.0.logo_image}}' %}"
alt="Generic logo image"
title="Client logo">
</img>
<!-- Font color -->
<style>
th {
font-weight: bold;
color: #{{ClubSettingsApplied.0.font_color}};
padding-left: 0.2em;
}
</style>
使用模板变量似乎不适用于静态路径标记。
当然,我可以建立完整的网址,包括我视线中的路径......但是也许有一个更聪明的工作。
期待获得一些想法。
答案 0 :(得分:1)
静态模板标记只接受一个字符串作为参数,它不能在该字符串中呈现另一个变量。
解决方案是使用get_static_prefix模板标记。在这种情况下,它将通过呈现解析静态文件所需的正确前缀来帮助您。
我在django 1.7上测试了这个,django docs说它应该以远远超过1.4或更远的方式工作。
<!-- Logo -->
{% load static %}
{% get_static_prefix as STATIC_PREFIX %}
<img class="LogoPos img-responsive"
src="{{ STATIC_PREFIX }}img/{{ClubSettingsApplied.0.logo_image}}"
alt="Generic logo image"
title="Client logo">
</img>
<!-- Font color -->
<style>
th {
font-weight: bold;
color: #{{ClubSettingsApplied.0.font_color}};
padding-left: 0.2em;
}
</style>