我的问题似乎相当微不足道,但我无法解决。在我的Velocity-Templates中,我有一个变量$contentFormDb
,它已经填充了数据库中的内容(在MVC应用程序的控制器中)。此变量不仅包含文字字符串,还包含其他速度指令(如" #set($test = "test) $test"
,请参阅下面的示例)。
如果我在模板中使用$contentFromDB
,Velocity会以“文字方式”将内容打印到我的模板中。例如,如果变量$contentFromDB
包含字符串" #set($test = "test) $test"
(已在Controller中设置),我将使用速度模板中的文字输出#set($test = "test) $test
而不是{{1} }。
我需要类似test
指令的东西,我可以给我的变量#parse()
然后评估变量。 $contentFromDB
但#parse($contentFormDb)
仅接受要评估/解析的文件。
也许我完全不知道这里的东西......但是如何解决这个问题,这似乎是一个标准的用例,其中包含来自DB的内容,然后还需要在模板中进行评估......
非常感谢!! 扬
答案 0 :(得分:3)
#evaluate指令看起来会像你想要的那样。
答案 1 :(得分:0)
您可以通过#parse()
注册Velocimacros这在Velocity 1.6中成为可能。