例如:
{{with $field := field "booking.Smoking" .}}
{{radio $field "true"}} Smoking
{{radio $field "false"}} Non smoking
{{end}}
nl2br
将换行符转换成 HTML 的 break.
例如:
You said:
<div class="comment">{{nl2br .commentText}}</div>
pluralize
一个辅助的复数函数
例如:
There are {{.numComments}} comment{{pluralize (len comments) "" "s"}}
raw
输出原生的、未转义的文本
例如:
<div class="body">{{raw .blogBody}}</div>
Including
Go 模板允许你在模板中包含其他模板,比如:
{{template "header.html" .}}
注意: * 相对路径是 app/views
温馨提示
Revel 应用程序有效利用 Go 模板,请看看下面的例子:
revel/samples/booking/app/views/header.html
revel/samples/booking/app/views/Hotels/Book.html
使用辅助函数,为模板设置标题和额外的样式。
例如:
<html>
<head>
<title>{{.title}}</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" media="screen" href="/public/css/main.css">
<link rel="shortcut icon" type="image/png" href="/public/img/favicon.png">
{{range .moreStyles}}
<link rel="stylesheet" type="text/css" href="/public/{{.}}">
{{end}}
<script src="/attachments/image/cimg/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
<script src="/attachments/image/cimg/script>
{{range .moreScripts}}
<script src="/attachments/image/cimg/{{.}}" type="text/javascript" charset="utf-8"></script>
{{end}}
</head>
在模板中这样使用:
{{set . title "Hotels"}}
{{append . "moreStyles" "ui-lightness/jquery-ui-1.7.2.custom.css"}}
{{append . "moreScripts" "js/jquery-ui-1.7.2.custom.min.js"}}
{{template "header.html" .}}
自定义模板函数
应用程序可以注册自定义模板函数
例如:
func init() {
revel.TemplateFuncs["eq"] = func(a, b interface{}) bool { return a == b }
}
标签:Revel
相关阅读 >>
更多相关阅读请进入《Revel》频道 >>

Go语言101
一个与时俱进的Go编程知识库。