0

我是Clojure的新手。我的问题是关于selmer模板库。

我想要做的是为以下方式应用一个变量。但它不起作用;

{% include  {{right-page}} %} -------  X

(此处右页是目标文件名的串联字符串)

4

2 回答 2

2

当 selmer 编译模板时,当前必须知道包含在 selmer 中的任何目标,它在没有传入数据的情况下执行此操作。这意味着,给定模板:

模板.html_模板:

{% include right-page %}

和clojure代码:

(selmer/render-file template.html_template 
                    {right-page "some/other/template/file.html_template})

你可以期待一个例外。至于解决方法,您可能会考虑

(selmer/render-file template.html_template 
  {right-page (selmer/render-file 
                "some/other/template/file.html_template {})})

或类似的东西。

当然,您必须更新 template.html 以包含已呈现的文本,并禁用转义,如下所示:

模板.html_模板:

{{right-page|safe}}
于 2017-04-10T08:29:27.193 回答
-1

如果 right-page 是您传递给页面的有效字符串,我认为这对您有用

{% include right-page %}

于 2016-02-10T11:09:05.817 回答