Play 2.0:坚持数据库的主标题

时间:2014-09-11 20:42:57

标签: java playframework-2.0 ebean

我的网络应用程序的主标题显示在每个页面上。例如,stackoverflow将显示在每个页面的顶部菜单中。目前这个标题在我的main.scala.html中是硬编码的:

<title>My Main Title</title>

我想在我拥有的设置页面上配置此标题。我如何坚持这一点,以便我可以在以后加载它并让用户配置它?

2 个答案:

答案 0 :(得分:0)

在呈现页面时将String类型的variralbe发送到Play Framework的视图,并将其作为标题使用。可以在控制器中配置此变量:

  1. 您的控制器

    public static Result func() { String title = "Your Title"; //Your Code return ok(index.render(title)); }

  2. 您的观点

    @(title: String)<!DOCTYPE html> <html> <head> <title>@title</title> </head> <body> <!--Your Body--> </body> </html>

答案 1 :(得分:0)

只需创建Title模型+模板进行编辑,搜索具有最高ID的标题,以确保您只使用最新的ID(如果有多个ID:

String pageTitle = Title.find.setOrderBy("id DESC").setMaxRows(1).findUnique();

另一方面,为了存储静态消息,您还可以使用conf/messages文件,即添加行:

mainTitle =我的主标题

所以你可以在任何模板中使用它:

<title>@Messages("mainTitle")</title>

无论如何都不允许更改“动态”标题;更容易的方法是每次从DB选择pageTitle并作为参数传递。