下面的例子与上面有两个不同:
- 我们为字段指定了一个验证错误消息
Message
,而不是使用验证函数默认的错误信息 - 我们在页面的上方打印所有的错误消息
代码如下:
func (c MyApp) SaveUser(username string) revel.Result {
// Username (必填) 至少 4 - 15 字符.
c.Validation.Required(username).Message("Please enter a username")
c.Validation.MaxSize(username, 15).Message("Username must be at most 15 characters long")
c.Validation.MinSize(username, 4).Message("Username must be at least 4 characters long")
c.Validation.Match(username, regexp.MustCompile("^\\w*$")).Message("Username must be all letters")
if c.Validation.HasErrors() {
// 保存错误信息到 flash 上下文中并重定向
c.Validation.Keep()
c.FlashParams()
return c.Redirect(Hotels.Settings)
}
// All the data checked out!
...
}
模板如下:
{{/* app/views/Hotels/Settings.html */}}
...
{{if .errors}}
<div class="error">
<ul>
{{range .errors}}
<li> {{.Message}}</li>
{{end}}
</ul>
</div>
{{end}}
...
标签:Revel
相关阅读 >>
更多相关阅读请进入《Revel》频道 >>

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