81 lines
1.8 KiB
Go
81 lines
1.8 KiB
Go
package model
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
// 类型迁移
|
|
func migration() {
|
|
|
|
err := DB.AutoMigrate()
|
|
//err = DBOrder.AutoMigrate(
|
|
// &model.Pay{},
|
|
//)
|
|
|
|
if err != nil {
|
|
fmt.Println("register table fail")
|
|
panic(1)
|
|
}
|
|
|
|
//自动迁移模式
|
|
AddTable(&RefreshToken{})
|
|
AddTable(&LoginLog{})
|
|
AddTable(&User{})
|
|
AddTable(&RealName{})
|
|
|
|
//增加字段
|
|
AddColumn(&User{}, "title")
|
|
AddColumn(&User{}, "job_num")
|
|
AddColumn(&User{}, "birth_date")
|
|
AddColumn(&User{}, "sex")
|
|
AddColumn(&User{}, "operator")
|
|
|
|
AddColumn(&User{}, "last_login_date")
|
|
AddColumn(&User{}, "ip")
|
|
AddColumn(&User{}, "invitation_code")
|
|
AddColumn(&User{}, "english_name")
|
|
AddColumn(&User{}, "mail_account")
|
|
|
|
AddColumn(&LoginLog{}, "token")
|
|
AddColumn(&LoginLog{}, "status")
|
|
AddColumn(&LoginLog{}, "expire_date")
|
|
AddColumn(&LoginLog{}, "last_date")
|
|
AddColumn(&LoginLog{}, "logout_date")
|
|
AddColumn(&LoginLog{}, "address")
|
|
AddColumn(&LoginLog{}, "domain")
|
|
AddColumn(&LoginLog{}, "uuid")
|
|
AddColumn(&User{}, "domain")
|
|
AddColumn(&User{}, "left_date")
|
|
AddColumn(&User{}, "remark")
|
|
AddColumn(&User{}, "recent_img")
|
|
AddColumn(&RealName{}, "realid_img_a")
|
|
AddColumn(&RealName{}, "realid_img_b")
|
|
AddColumn(&RealName{}, "is_real")
|
|
AddColumn(&RealName{}, "video")
|
|
AddColumn(&User{}, "ic_num")
|
|
AddColumn(&User{}, "train")
|
|
AddColumn(&User{}, "certificate")
|
|
AddColumn(&User{}, "source")
|
|
AddColumn(&User{}, "security_code")
|
|
AddColumn(&User{}, "block_addr")
|
|
}
|
|
|
|
// 数据迁移
|
|
func AddColumn(dst interface{}, column string) {
|
|
if DB.Migrator().HasColumn(dst, column) == false {
|
|
if err := DB.Migrator().AddColumn(dst, column); err != nil {
|
|
fmt.Println(err)
|
|
}
|
|
}
|
|
}
|
|
|
|
func AddTable(dst interface{}) {
|
|
if DB.Migrator().HasTable(dst) == false {
|
|
if err := DB.Migrator().CreateTable(dst); err != nil {
|
|
fmt.Println(err)
|
|
return
|
|
}
|
|
}
|
|
return
|
|
}
|