Beego系列之ORM(2)

今天记录的orm的基本操作

要加载的扩展


编写model->链接数据库->以及建表

package models

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

type User struct {
	Id   int
	Name string
	Pwd  string
}

func init() {
	// set default database
	orm.RegisterDataBase("default", "mysql", "root:root@tcp(127.0.0.1:3306)/test?charset=utf8", 30)

	// register model
	orm.RegisterModel(new(User))

	// create table
	orm.RunSyncdb("default", false, true)
}


//1. orm对象
	o:=orm.NewOrm()
	//2. 有一个要插入的 数据结构体
	user:=models.User{}
	//3. 给结构体复制
	user.Name="詹三"
	user.Pwd = "123456"
	//4. 插入
	re,err:=o.Insert(&user)  //返回插入的id 以及错误

	//1. orm对象
	o:=orm.NewOrm()
	//2. 有一个要查的对象
	user:=models.User{}
	//3..查数据
	user.Id=1
	re,err:=o.Delete(&user)//成功返回1 失败0

	//1. orm对象
	o:=orm.NewOrm()
	//2. 有一个要查的对象
	user:=models.User{}
	//3..查数据
	user.Id=10
	err:=o.Read(&user)
        //更新数据
	user.Name="张三"
	user.Pwd="654321"
	re,err := o.Update(&user) //成功1失败0

	//1. orm对象
	o:=orm.NewOrm()
	//2. 有一个要查的对象
	user:=models.User{}
	user.Name = "詹三"
	err:=o.Read(&user,"name") //err错误  数据在user
	beego.Info("查询结果",user) 




附加一些操作,之后多了就汇总

重定向

c.Redirect("地址",状态码) 

打印到网页

c.Ctx.WriteString("注册成功")





伍先生
  • 职业: 程序员,产品
  • 码龄: 8.6
  • 技能: PHP Go 前端
  • 微信: JwCode
  • 公众号/小程序: 渐悟分享