【问题标题】:Execute code freemarker into a freemarker ftl将代码freemarker执行成freemarker ftl
【发布时间】:2021-09-13 13:15:42
【问题描述】:

我正在尝试在 freemarker ftl 中执行 freemarker 代码,我解释一下我所拥有的:

我们有一个带有 Spring 的模块,可以解决 FTL 视图并打印其内容,即使在这里一切正常,但有时我们希望在该视图中引入更多代码,我们需要这样做而无需再次部署模块,这就是我们在 String 变量中输入 Freemarker 代码并通过模型将该变量传递给视图的原因。但是问题出现在这里,我不知道如何管理那个变量,我最多只能画${myVar},但是Freemakrer代码看起来好像是一个简单的HTMl(即Freemarker不执行就这样)。

有没有办法对具有 Freemarker 代码的变量进行某种包含?

【问题讨论】:

    标签: spring freemarker


    【解决方案1】:

    我们对视图中的动态部分做类似的事情。您可以使用interpret<@var> 来实现这一点。类似的东西

    <#assign varTempl = myVar?interpret >
    <@varTempl />
    

    第一行会解析你的模板,第二行会打印出来。

    【讨论】:

    • 有效!一个问题,我们有自己的变量(我们通过 model.setAttribute 传递),我们在该变量的代码中使用这些变量,是否有可能将所述对象传递给该句子?
    • 到哪句话?整个模型可供解释器使用,因此任何东西都可用。
    • 你在世界上是绝对正确的,它完美地工作并且可以访问模型的所有数据,我检查了代码并且它包含一些错误,但在解决它之后我看到了我需要!非常感谢!
    • 请注意,您实际上并不需要为此创建一个变量,因为您可以只写&lt;@myVar?interpret /&gt;
    猜你喜欢
    • 2022-01-01
    • 2011-09-12
    • 2015-09-11
    • 1970-01-01
    • 2014-02-28
    • 2018-01-01
    • 1970-01-01
    • 2023-04-08
    • 2016-06-12
    相关资源
    最近更新 更多