beego——flash数据
发布时间:2020-12-15 07:32:54 所属栏目:百科 来源:网络整理
导读:这个flash与?Adobe/Macromedia Flash没有任何关系,它主要用于在 两个逻辑间传递临时数据 , flash中 存放的所有数据会在紧接着的下一个逻辑中调用后清除 。 一般用于传递提示和错误消息。它适合?Post/Redirect/Get?模式。 下面看使用的例子: // 显示设置信
这个flash与?Adobe/Macromedia Flash没有任何关系,它主要用于在两个逻辑间传递临时数据, flash中存放的所有数据会在紧接着的下一个逻辑中调用后清除。 一般用于传递提示和错误消息。它适合?Post/Redirect/Get?模式。 下面看使用的例子: // 显示设置信息 func (c *MainController) Get() { flash:=beego.ReadFromRequest(&c.Controller) if n,ok:=flash.Data["notice"];ok{ // 显示设置成功 c.TplName = "set_success.html" }else if n,ok=flash.Data["error"];ok{ // 显示错误 c.TplName = "set_error.html" }else{ // 不然默认显示设置页面 c.Data["list"]=GetInfo() c.TplName = "setting_list.html" } } // 处理设置信息 func (c *MainController) Post() { flash:=beego.NewFlash() setting:=Settings{} valid := Validation{} c.ParseForm(&setting) if b,err := valid.Valid(setting);err!=nil { flash.Error("Settings invalid!") flash.Store(&c.Controller) c.Redirect("/setting",302) return }else if b!=nil{ flash.Error("validation err!") flash.Store(&c.Controller) c.Redirect("/setting",302) return } saveSetting(setting) flash.Notice("Settings saved!") flash.Store(&c.Controller) c.Redirect("/setting",302) } 上面的代码执行的大概逻辑是这样的:
默认情况下? {{.flash.error}} {{.flash.warning}} {{.flash.notice}} flash 对象有三个级别的设置:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |