Beego的使用
开源基于golang的mvc框架,主要用于golang Web开发,beego可以用来快速开发API,Web,后端服务等各种应用。
官网:http://beego.me
beego github地址:https://github.com/astaxie/beego
beego脚手架工具安装bee
安装bee脚手架
go get github.com/beego/bee
bee 验证是否安装成功
创建普通项目:bee new 项目名
默认放$GOPANTH的Src目录 go env查看目录
go mod 管理依赖
使用包必须生成gomod的文件需要用
go mod init 初始化项目
bee run 来运行项目
默认端口时8080
会自动热加载
bee的目录:conf 配置文件
go mod vendor 将依赖包复制到项目下的vender目录
beego升级:分为go方式升级合源码下载升级
1.go升级,通过该方式用户可以升级beego框架,强烈推荐方式 go get -u github.com/astaxie/beego
2.源码下载升级,用户访问https://github.com/astaxie/beego,下载源码,然后覆盖到$GOPATH/src/github.com/astaxie/beego目录,然后通过本地执行安装就可以升级了。
go install github.com/astaxie/beego
beego里面的控制器本质上是一个结构体,内嵌beego.controller
{{.title}}//渲染页面的字段
c.Data[“title”] =“你好golang”//绑定数据
c.Data[“num”]=12
c.Ctx.WriteString(“新闻列表”)//直接给我们页面返回数据
访问控制器中的指定方法
beego中的路由机制可以控制具体的URL请求执行那个控制器的方法。通常每个控制器可以定义很多方法。路由机制是控制哪个控制器接收哪些请求
beego.Router(“article/add”,&controllers.ArticleController{},“get:AddArticle”)
username := c.GetString(“username”)//接收url传过来的参数
id,err := c.GetInt(“id”)
strconv.itoa(id)
hobby := c.GetStrings(“hobby”)//返回时[]string
type User struct{
Username string form:"username" json:"username"
Password string form:"password" json:"password
Hobby []string form:"hobby" json:"hobby"
}
u := User{}
if err := c.ParseForm(&u);err != nil{
c.Ctx.WriteString(“post失败”)
return
}
c.Ctx.WriteString(“post接收成功”)
fmt.Println("%v",v)
beego返回json数据
将数据放在结构体
写完方法配置路由才能访问
u:=User{
Username:“zhangsan”,
Password:“123456”,
Hobby:[]string{“12”,“33”}
}//实例化User
//返回json数据
c.Data[“json”] = u
c.ServeJSON()