java – 关于freemarker模板的建议,想要创建一个主模板

前端之家收集整理的这篇文章主要介绍了java – 关于freemarker模板的建议,想要创建一个主模板前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我想创建一个每个其他视图页面都将继承的主模板.

所以主模板将具有:

HEADER
--CONTENT--
FOOTER

>标题将可选地显示(如果用户登录),用户名和其他用户对象属性.
> –CONTENT–是一个占位符,其他“继承”视图页面会将其内容注入其中.

所以我的问题是,这可能与freemarker有关吗?如果有,任何指导?

如何将用户对象从控制器操作传递到标头?理想情况下,对象将在每个视图页面以外的其他位置传递(以避免必须在每个视图页面上维护此代码).

最佳答案
是的,这是可能的.在我们的应用程序中,用户对象之类的东西存在于会话范围内,但这可能是freemarker有权访问的任何范围:

<#if Session.the_user?? && Session.the_user.loggedIn>
    <#-- header code -->

您可以省略会话.和Freemarker将搜索给定变量名称的各种范围.

要注入内容,请在主模板中您希望视图页面放置其内容的位置包含此内容

<#nested>

然后,视图页面声明它们对主模板的使用,如下所示:

<#import "/WEB-INF/ftl/path/to/template/master.ftl" as com>
<@com.template>
    View page content

猜你在找的Spring相关文章