parent
e6a0963e1a
commit
ef50e63c10
@ -0,0 +1,13 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
"gorm.io/gorm"
|
||||
"time"
|
||||
)
|
||||
|
||||
type Model struct {
|
||||
ID uint `gorm:"primarykey" json:"id"`
|
||||
CreatedAt time.Time `json:"createdAt"`
|
||||
UpdatedAt time.Time `json:"updatedAt"`
|
||||
DeletedAt gorm.DeletedAt `gorm:"index" json:"-"`
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
"ginCms/utils"
|
||||
"log"
|
||||
)
|
||||
|
||||
// Init 初始化模型
|
||||
func Init() {
|
||||
// migrate
|
||||
migrate()
|
||||
|
||||
// seed
|
||||
seed()
|
||||
}
|
||||
|
||||
// 表结构迁移
|
||||
func migrate() {
|
||||
// 自动迁移
|
||||
if err := utils.DB().AutoMigrate(
|
||||
&Role{},
|
||||
); err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
}
|
||||
|
||||
// 数据填充
|
||||
func seed() {
|
||||
roleSeed()
|
||||
}
|
@ -0,0 +1,39 @@
|
||||
package models
|
||||
|
||||
import "ginCms/utils"
|
||||
|
||||
// Role 角色模型
|
||||
type Role struct {
|
||||
Model
|
||||
Title string `gorm:"type:varchar(255);uniqueIndex" json:"title"`
|
||||
Key string `gorm:"type:varchar(255);uniqueIndex" json:"key"`
|
||||
Enabled bool `gorm:"" json:"enabled"`
|
||||
Weight int `gorm:"index;" json:"weight"`
|
||||
Comment string `gorm:"type:text" json:"comment"`
|
||||
}
|
||||
|
||||
// 填充数据
|
||||
func roleSeed() {
|
||||
// 构建数据
|
||||
rows := []Role{
|
||||
{
|
||||
Title: "管理员",
|
||||
Key: "administrator",
|
||||
Enabled: true,
|
||||
Model: Model{ID: 1},
|
||||
},
|
||||
{
|
||||
Title: "常规用户",
|
||||
Key: "regular",
|
||||
Enabled: true,
|
||||
Model: Model{ID: 2},
|
||||
},
|
||||
}
|
||||
|
||||
// 插入
|
||||
for _, row := range rows {
|
||||
if err := utils.DB().FirstOrCreate(&row, row.ID).Error; err != nil {
|
||||
utils.Logger().With(err.Error())
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in new issue