1 回答
TA贡献1829条经验 获得超4个赞
我刚刚尝试运行Beego 快速入门项目并成功运行。
确保你同时安装了beego和bee。创建新项目后,请bee new projectname确保编辑projectname/conf/app.conf文件并添加sessionon = true:
appname = quickstart
httpport = 8080
runmode = dev
sessionon = true
我创建了一个重定向控制器,如:
type RedirectController struct {
beego.Controller
}
func (c *RedirectController) Get() {
profile := make(map[string]interface{})
profile["nickname"] = "User's Nickname"
profile["picture"] = "/path/to/img.jpg"
c.SetSession("profile", profile)
c.Redirect("/", 301)
}
主控制器:
type MainController struct {
beego.Controller
}
func (c *MainController) Get() {
profile := c.GetSession("profile")
c.Data["nickname"] = profile.(map[string]interface{})["nickname"]
c.Data["picture"] = profile.(map[string]interface{})["picture"]
c.TplNames = "index.tpl"
}
我的 index.tpl 文件:
<p>Nickname: {{.nickname}}</p>
<p>Picture: {{.picture}}</p>
和路由器:
func init() {
beego.Router("/", &controllers.MainController{})
beego.Router("/redirect", &controllers.RedirectController{})
}
我还建议您使用结构来存储配置文件值,例如:
// Define struct.
type Profile struct{
Nickname string
Picture string
}
// Save it for template rendering.
this.Data["profile"] = &Profile{Nickname:"astaxie", Picture:"img.jpg"}
// And render it like this:
Nickname: {{.profile.Nickname}}
Picture: {{.profile.Picture}}
请务必阅读本文以了解模板渲染是如何完成的。我希望这就是您所要求的,如果不是,请编辑您的问题并添加更多有用的信息,我将编辑此答案。
- 1 回答
- 0 关注
- 133 浏览
添加回答
举报