31 lines
671 B
Go
31 lines
671 B
Go
|
package model
|
||
|
|
||
|
import (
|
||
|
"gorm.io/gorm"
|
||
|
"gorm.io/gorm/clause"
|
||
|
"uauth/internal/tool"
|
||
|
)
|
||
|
|
||
|
func Init(tx *gorm.DB) error {
|
||
|
var err error
|
||
|
if err = tx.AutoMigrate(
|
||
|
&User{},
|
||
|
&Client{},
|
||
|
&AuthorizationRecord{},
|
||
|
); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
if err = tx.Clauses(clause.OnConflict{DoNothing: true}).
|
||
|
Create(&User{Username: "admin", Nickname: "admin", Password: tool.NewPassword("Foobar123")}).Error; err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
if err = tx.Clauses(clause.OnConflict{DoNothing: true}).
|
||
|
Create(&Client{ClientId: "test", ClientSecret: "Foobar123", Name: "测试", Icon: "https://picsum.photos/seed/loveuer/200"}).Error; err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
return nil
|
||
|
}
|