Controller等同于Django里的view,处理逻辑都是在Controller里面完成的,下面就写一个最简单的Controller。
咱们在写本身的controller的时候,必定要继承beego.Controller,也必定要记得导入 github.com/astaxie/beego
git
beego.Router("/test", &controllers.TestContronller{}, "get:SelfTest")
// test package controllers // 包必定是这个名 import ( "github.com/astaxie/beego" ) type TestContronller struct { beego.Controller } func (c *TestContronller) SelfTest() { c.Ctx.WriteString("this is myself controller!") }
注意这个package 必须是controllers,新建的话通常都是main,因此记得修改。github
而后咱们重启下beeGo,访问http://127.0.0.1/test 就能够看到咱们本身返回的内容了。this
用户一般经过Get,Post等方式来发送数据,beeGo里面会自动解析这些数据,咱们能够用下面这些方法来处理。code
咱们先从GetString 这个方法来作:
1 先在router.go加上对应的路由规则router
beego.Router("/getdata", &controllers.TestContronller{}, "get:GetData")
2 而后在controllers/test.go里面写上本身的代码,继承
package controllers import ( "github.com/astaxie/beego" ) type TestContronller struct { beego.Controller } func (c *TestContronller) GetData() { id := c.GetString("id") c.Ctx.WriteString(id) name := c.Input().Get("name") c.Ctx.WriteString(name) }
代码写完后重启,此时,咱们访问 http://127.0.0.1/getdata?id=hehe&name=lisis 那么页面就会显示 hehe lisis路由