我的网络应用程序的主标题显示在每个页面上。例如,stackoverflow将显示在每个页面的顶部菜单中。目前这个标题在我的main.scala.html中是硬编码的:
<title>My Main Title</title>
我想在我拥有的设置页面上配置此标题。我如何坚持这一点,以便我可以在以后加载它并让用户配置它?
答案 0 :(得分:0)
在呈现页面时将String类型的variralbe发送到Play Framework的视图,并将其作为标题使用。可以在控制器中配置此变量:
您的控制器
public static Result func() {
String title = "Your Title";
//Your Code
return ok(index.render(title));
}
您的观点
@(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并作为参数传递。