我目前正在使用bootswatch在我的Web应用程序中实现多个主题。用户可以通过从选择列表中进行选择来选择他们希望在Web应用程序上看到的css主题。
我已经写了一个服务,kjTheme来处理这个问题。理想情况下,当用户在前端选择一个新主题(比如“Cyborg”)时,我的索引文件将使用代码行:
<link rel="stylesheet" type="text/css" href="" data-ng-href={{ $kjTheme }}"/>
引用我的服务。然后我的服务引用相应的css文件路径(即'/libs/bootswatch/cyborg/bootstrap.min.css')。
但是,我遇到了模板语法错误。 例外值:无法解析剩余部分:'$ kjTheme'来自'$ kjTheme' 异常位置指向我的django \ template \ base.py
关于我做错了什么的想法,或者我可以检查什么来让我走上正确的道路?
谢谢!
答案 0 :(得分:1)
Django和AngularJS都使用双括号语法{{ variable }}
,您需要在Django模板级别转义双括号,以便Django不会尝试渲染您的标记
data-ng-href="{% templatetag openvariable %} $kjTheme {% templatetag closevariable %}"
答案 1 :(得分:0)
你需要告诉Django不要试图解析Angular标签。使用{% verbatim %}
来执行此操作。