2013-02-04 64 views
0

我正在使用Play Framework 1.2.5。是什么区别:优选的形式动作中使用,而第二个可被用于锚定模板玩!模板语法

@{Application.render()} 

@Application.render() 

第一个。他们两个都会生成一个URL,因此无法理解第一个需要围绕大括号的{}

请让我知道这件事。

感谢,

回答

1

@{}是一个捷径基于反向路由相对URL(控制器.method - > URL)

@@{}给你绝对URL

#{}指代标签。有恰好是一个#a标签,你可以做

#{a @Application.logout()}Disconnect#{/a} 

因为标签内,你实际上传递ActionDefinition做@Application.logout(),而不是URL时。

请参阅http://www.playframework.org/documentation/1.2.5/tags

0

据我所知,你需要花括号,当你使用这一个模板,例如: <form action="@{Application.post}">

我刚刚尝试了没有大括号,导致确切的字符串(@ Application.render),而不是一个URL。

我的模板代码:

@Application.index()<br /> 
@{Application.index()}<br /> 

在下面的HTML结果在我的浏览器:

@Application.index()<br /> 
/<br /> 
+0

感谢您的回复。 '#{a}'也是一个内置模板,那么为什么我们不需要这里的大括号呢? – WhoAmI