From a5c6cc40450156b0d237cac14d45a57435324a1b Mon Sep 17 00:00:00 2001 From: hupeh Date: Tue, 3 Jan 2023 02:14:21 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20:recycle:=20=E6=89=8B=E5=86=99=20go?= =?UTF-8?q?rm.Model=20=E4=B8=AD=E7=9A=84=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 方便定义 json 的 tag,控制字段可见性输出和数据库中的字段顺序 --- app/db.go | 47 ++++++++++++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/app/db.go b/app/db.go index e2ead0e..066c358 100644 --- a/app/db.go +++ b/app/db.go @@ -25,7 +25,7 @@ func ConfigGormDB() { panic(err) } admin := User{ - Model: gorm.Model{ID: 1}, + ID: 1, Name: "超级管理员", PhoneNumber: "18982052224", Password: hash, @@ -39,36 +39,45 @@ func ConfigGormDB() { // User 用户 type User struct { - gorm.Model - Name string `json:"name"` // 用户名称 - PhoneNumber string `json:"phone_number"` // 用户手机 - Password string `json:"-"` // 登录密码 - Admin bool `json:"admin"` // 是不是管理员 + ID uint `json:"id" gorm:"primarykey"` + Name string `json:"name"` // 用户名称 + PhoneNumber string `json:"phone_number"` // 用户手机 + Password string `json:"-"` // 登录密码 + Admin bool `json:"admin"` // 是不是管理员 + CreatedAt time.Time `json:"-"` + UpdatedAt time.Time `json:"-"` + DeletedAt gorm.DeletedAt `json:"-" gorm:"index"` } // UserToken 用户令牌 type UserToken struct { - Code string `gorm:"primarykey"` // 主键 - UserID uint // 用户ID - User *User // 关联用户 - AccessToken string // 授权令牌 - RefreshToken string // 刷新令牌 - CreatedAt time.Time // 创建时间 + Code string `json:"code" gorm:"primarykey"` // 主键 + UserID uint `json:"user_id"` // 用户ID + User *User `json:"user,omitempty"` // 关联用户 + AccessToken string `json:"access_token"` // 授权令牌 + RefreshToken string `json:"refresh_token"` // 刷新令牌 + CreatedAt time.Time `json:"-"` // 创建时间 } // Goods 商品 type Goods struct { - gorm.Model - Name string `json:"name"` // 商品名称 - Price float32 `json:"price"` // 商品当前价格 - Prices []Price `json:"prices,omitempty"` // 商品价格列表 + ID uint `json:"id" gorm:"primarykey"` + Name string `json:"name"` // 商品名称 + Price float32 `json:"price"` // 商品当前价格 + Prices []Price `json:"prices,omitempty"` // 商品价格列表 + CreatedAt time.Time `json:"-"` + UpdatedAt time.Time `json:"-"` + DeletedAt gorm.DeletedAt `json:"-" gorm:"index"` } // Price 商品价格 type Price struct { - gorm.Model - GoodsID uint `json:"goods_id"` // 管理商品 - Price float32 `json:"price"` // 商品价格 + ID uint `json:"id" gorm:"primarykey"` + GoodsID uint `json:"goods_id"` // 管理商品 + Price float32 `json:"price"` // 商品价格 + CreatedAt time.Time `json:"-"` + UpdatedAt time.Time `json:"-"` + DeletedAt gorm.DeletedAt `json:"-" gorm:"index"` } // Paginate 分页查询作用域