beego框架之 orm模型

go语言web框架中 orm使用结构体来定义

beego orm

type User struct { Id int `orm:"column(id);pk"` Name string `orm:"column(username);unique;size(16)"` Password string `orm:"sizs(16);unique"` Avatar string `orm:"default(/static/avatar/default.jpg)"` } 定义字段 定义类型 定义属性

beego orm字段的属性参数

pk

设置为主键,适用于自定义其他类型为主键

auto

当 Field 类型为 int, int32, int64, uint, uint32, uint64 时,可以设置字段为自增健

  • 当模型定义里没有主键时,符合上述类型且名称为 Id 的 Field 将被视为自增健。

null

数据库表默认为 NOT NULL,设置 null 代表 ALLOW NULL

index

为单个字段增加索引

unique

为单个字段增加 unique(唯一索引) 键

column

为字段设置 db 字段的名称

size

string 类型字段默认为 varchar(255)

设置 size 以后,db type 将使用 varchar(size)

digits / decimals

设置 float32, float64 类型的浮点精度

auto_now / auto_now_add

  • auto_now 每次 model 保存时都会对时间自动更新
  • auto_now_add 第一次保存时才设置时间

type

设置为 date 时,time.Time 字段的对应 db 类型使用 date

default

为字段设置默认值,类型必须符合(目前仅用于级联删除时的默认值)

原文地址:https://www.cnblogs.com/sw-z/p/11248541.html