golang、beego初探

s630405377 · · 3136 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

http://beego.me/docs/mvc/model/object.md


入口文件main.go

package main


import (
"github.com/astaxie/beego"
"github.com/astaxie/beego/orm"
_ "github.com/go-sql-driver/mysql"
"testslim/models"
_ "testslim/routers"
)


func init() {
orm.RegisterDriver("mysql", orm.DR_MySQL)
orm.RegisterDataBase("default", "mysql", "test:pwd@tcp(ip:3306)/tablename?charset=utf8")
orm.RegisterModelWithPrefix("he_", new(models.Students))
}


func main() {
beego.Run()
}

models目录下存放model文件

models.go:

package models


type Students struct {
Id         int
Nickname   string
CreateTime int
}


controllers目录下存放控制器

package controllers


import (
//"fmt"
"github.com/astaxie/beego"
"github.com/astaxie/beego/orm"
_ "github.com/go-sql-driver/mysql"
"testslim/models"
//"time"
)

func (t *TestController) Testmodel() {
o := orm.NewOrm()
o.Using("default")


//ins
// student := new(models.Students)
// student.Nickname = "Test From Go"
// student.CreateTime = int(time.Now().Unix())
//fmt.Println(o.Insert(student))


//read
// student := models.Students{Id: 10001}
// err := o.Read(&student)
// if err == orm.ErrNoRows {
// t.Data["json"] = "No rows"
// } else if err == orm.ErrMissPK {
// t.Data["json"] = "No pk"
// } else {
// t.Data["json"] = student
// }


var stds []*models.Students
o.QueryTable("he_students").Limit(10).All(&stds)
t.Data["json"] = map[string][]*models.Students{"stds": stds}
t.ServeJson()
}


最后在路由routers中配置router.go

package routers


import (
"github.com/astaxie/beego"
"testslim/controllers"
)


func init() {
beego.Router("/", &controllers.MainController{})
//beego.Router("/test", &controllers.TestController{})
beego.AutoRouter(&controllers.TestController{})
}


运用以上的操作可以完成一套简单的接口


有疑问加站长微信联系(非本文作者)

本文来自:CSDN博客

感谢作者:s630405377

查看原文:golang、beego初探

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

3136 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传