freemarker怎样包含一个action
在webwork中配置了一个action,这个action会返回到一个ad.ftl中。现在想在home.ftl中包含这个action以动态显示相应的内容,自然就想到<#include "/showadvert.action">,却发现不可以这样做,因为include只能包含一个文件,且会把文件的内容当作文本显示出来。有什么办法可以解决这个问题。 4 楼 totobacoo 2007-12-13
要包含一个 action 也不关 freemarker 的事情吧。
看你的代码样子,是要做 ad 的页面引入。 要通过 freemarker 来做的话,办法可以是由 action 做 ad 的数据准备,页面通过 include ad.ftl 来展现广告列表。 至于 action 怎么做 ad 的数据准备,比较理想的方式肯定是 interceptor 来做全局的注入了。
另一个传统的方式是通过js来做广告列表的引入,门户都这么干。这就是另外一个话题了 5 楼 姜太公 2007-12-13 nepalon 写道在ftl中可以调用指定的action并显示相应的结果。但是通过这个标签无法传递参数给action,比如我想显示showLeftAdvertBoards.action?id=323的结果,要如何实现
<div class='code_title'>xml 代码</div>
<div class='dp-highlighter'>
<div class='bar'/>
<ol class='dp-xml'>
<li class='alt'><span><span class='tag'><</span><span>@ww.action?</span><span class='attribute'>name</span><span>=</span><span class='attribute-value'>"showLeftAdvertBoards"</span><span>?</span><span class='attribute'>executeResult</span><span>=</span><span class='attribute-value'>true</span><span class='tag'>></span><span>??</span></span></li>
<li class=''><span>???????</span><span class='tag'><</span><span>@ww.param?</span><span class='attribute'>name</span><span>=</span><span class='attribute-value'>"id"</span><span class='tag'>></span><span>123</span><span class='tag'><!----><span>@ww.param</span><span class='tag'>></span><span>??</span></span></li>
<li class='alt'><span/><span class='tag'><!----><span>@ww.action</span><span class='tag'>></span><span>??</span></span></li>
</ol>
</div>
<p><br/>
</p>
<p>不过有个奇怪的问题,就是主Action,比如Index如果返回了input或者error,ShowLeftAdverBorads也会调用返回input或error的结果。我没有解决。</p>
6 楼 mmwy 2007-12-14
配置showLeftAdvertBoards的拦截器组合中不包含 validation