base_view_controller.go 1.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package controllers
  2. type BaseViewController struct {
  3. BaseController
  4. }
  5. // 设置模板
  6. // 第一个参数模板,第二个参数为layout
  7. func (this *BaseViewController) SetTpl(template ...string) {
  8. var tplName string
  9. layout := ""
  10. switch {
  11. case len(template) == 1:
  12. tplName = template[0]
  13. case len(template) == 2:
  14. tplName = template[0]
  15. layout = template[1]
  16. default:
  17. tplName = "index.tpl"
  18. }
  19. this.Layout = layout
  20. this.TplName = tplName
  21. }
  22. // 重定向
  23. func (this *BaseViewController) Redirect302(url string) {
  24. this.Redirect(url, 302)
  25. this.StopRun()
  26. }
  27. // 错误页面
  28. func (this *BaseViewController) Abort404() {
  29. this.Abort("404")
  30. }
  31. // // 微信错误页面
  32. // func (this *BaseViewController) WxAbort404(title, desc string) {
  33. // this.Data["Title"] = title
  34. // this.Data["Desc"] = desc
  35. // this.SetTpl("view_wx/error/404.html")
  36. // }
  37. // type BaseAuthViewController struct {
  38. // BaseViewController
  39. // }
  40. // func (this *BaseAuthViewController) Prepare() {
  41. // this.BaseController.Prepare()
  42. // backUrl := utils.SetThisRequestURI(this.Ctx.Request.RequestURI)
  43. // backUrl = base64.URLEncoding.EncodeToString([]byte(backUrl))
  44. // if this.GetUserInfo() == nil {
  45. // if strings.HasPrefix(this.Ctx.Request.RequestURI, "/web/") {
  46. // this.Redirect302(beego.URLFor("WebLoginViewController.Login") + "?backUrl=" + backUrl)
  47. // } else {
  48. // this.Redirect302(beego.URLFor("WxLoginViewController.Login") + "?backUrl=" + backUrl)
  49. // }
  50. // }
  51. // }