0

我正在编写一个 MVC portlet 框架,并计划在我的视图中使用 Rythm。我想将各种参数传递给视图,并想知道是否有办法在运行时使用 Java 为视图声明这些参数?我知道我可以使用 @args 标记在视图中声明参数,并且可以从 Java 添加自定义标记,但我想做一些类似于 ASP.NET MVC 如何传递帮助程序类(HtmlHelper @Html、UrlHelper @Url、对象@Model) 到视图。

4

1 回答 1

0

如果您计划传递给视图的所有参数都是全局的(即它们应用于所有渲染会话和所有模板),那么您应该将它们视为隐式变量,这意味着模板作者不需要声明它们但它们可以自由使用它们。隐式变量的示例是会话、请求、上下文等。

关于如何声明隐式变量,可以参考:

有关如何使用隐式变量配置 Rythm 引擎,请参阅

关于如何为每个渲染会话注入隐式变量到 rythm 引擎,也可以参考:


对于HtmlHelper我的建议是提供可重用的节奏模板作为标签而不是 Java 对象。因为您需要渲染 html 片段,因此使用 rythm 是一种自然的方式,而不是让 Java 代码输出内容。

对于诸如UrlHelper字符串操作之类的事情,您可以直接使用 Java 代码,但可能公共静态方法比帮助程序实例更合适

于 2016-09-21T23:13:21.273 回答