我想根据变量指向不同的HTML文件。我使用包括以下格式:使用include动态指向HTML
{% include 'templates/case/{{cid}}/intro.html' %}
这将引发一个错误:
TemplateNotFound: templates/case/{{cid}}/intro.html
看着这个我知道的Jinja2在运行时不解析变量。的cid = ABC
(ABC是在路径中的文件夹的名称)的价值,所以我预计总路径是:
templates/case/ABC/intro.html
如果我在包括它直接使用此解决路径。
我怎样才能解决这个问题?
托马斯,谢谢你的回应。如果你的意思是我在一个变量中传递完整的路径:vid ='templates/case/{{cid}}/intro.html',然后在斜线中使用.... {%include'{{vid}}' %}。我试过...这给出了同样的错误... TemplateNotFound。 – Utpal
@Utpal您是否尝试删除“{{}}”,然后使用{%include vid%}?虽然我可能没有使用Jinja,但我希望它能在这方面与django类似。你可能想看看这个类似的问题:http://stackoverflow.com/questions/6101864/dynamic-use-of-templates-in-jinja2 –
谢谢托马斯。删除“{{}}”完美无缺。但是,我会检查你警告过我的'路径遍历攻击'。 – Utpal