初学Beego

基础命令

创建项目:bee new 项目名   

运行项目:

方法1:终端进入项目目录执行 Bee ruan

方法2:终端进入项目目录执行 go build 项目名,会生成一个可执行文件然后 go run 可执行文件

 

设置模板路径:

beego默认的路径是view,可以自己设置

方法1:在入口函数中添加beego.SetViewsPath("testview")

方法2:配置文件中设置:viewspath = "testview"

 

在default.go中自定义一个控制器

//自定义控制器
type UserController struct {
   beego.Controller
}

//结构体名字和属性名大写代表public,可供外部使用
type Users struct {
   Uid int
   Username string
   Age int
}

func (u *UserController) Get() {
   //u.Ctx.WriteString("this is user controller")  //在前台打印一段文字

   //初始化结构体方法1
   //var user1 Users=Users{Uid:1,Username:"用户1",Age:18}

   //初始化结构体方法2
   var user2 Users
   user2.Uid=2
   user2.Username="用户2"
   user2.Age=19
   //初始化结构体方法3
   user3:=Users{Uid:3,Username:"用户3",Age:20}

   //普通传参到模板
   u.Data["name"]="测试111"

   //传递结构体参数到模板
   u.Data["mystruct"]=user3

   //传递数组参数到模板
   arr1:=[5]string{"aaa","bbb","ccc","ddd"}
   u.Data["arr"]=arr1

   u.TplName="user.html"

}

在路由文件中绑定下:beego.Router("/user", &controllers.UserController{})

模板代码

<body>
普通参数:{{.name}}
<hr>
结构体参数:
{{.mystruct.Uid}} <br>
{{.mystruct.Username}} <br>
{{.mystruct.Age}} <br>
<hr>
数组参数1:(key和val变量必须用$)
{{range $k,$v := .arr}}
{{$k}} ==== {{$v}}<br>
{{end}}
<hr>
数组参数2:(key和val变量必须用$)
{{range .arr}}
{{.}}<br>
{{end}}
</body>

 

结构体数组:

type Book struct{
   Name string
   Author string
}
func main(){
   arr:=[2]Book{{Name:"红楼梦",Author:"曹雪芹"},{Name:"西游记",Author:"吴承恩"}}
   fmt.Print(arr)

   var arr1 [5]Book=[5]Book{{Name:"红楼梦",Author:"曹雪芹"},{Name:"西游记",Author:"吴承恩"}}
   fmt.Print(arr1)
}

 

 

模型定义

默认的表名规则,使用驼峰转蛇形:

AuthUser -> auth_user
Auth_User -> auth__user
DB_AuthUser -> d_b__auth_user

除了开头的大写字母以外,遇到大写会增加 _,原名称中的下划线保留。

 

自定义表名(如果你的结构体跟你真实mysql表不适合默认的表名规则,可以用这个手动注册模型)
type User struct {
    Id int
    Name string
}

func (u *User) TableName() string {
    return "你的真实表明"
}

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章