41 lines
717 B
Go
41 lines
717 B
Go
package dao
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/gogf/gf/v2/frame/g"
|
|
)
|
|
|
|
type tableInitializer func(ctx context.Context) error
|
|
|
|
var tableInitializers = []tableInitializer{
|
|
Parent.Init,
|
|
Child.Init,
|
|
Strategy.Init,
|
|
Level.Init,
|
|
SceneNode.Init,
|
|
NodeOption.Init,
|
|
Element.Init,
|
|
UserProgress.Init,
|
|
ChapterReview.Init,
|
|
UserRouteLog.Init,
|
|
UserCollection.Init,
|
|
Badge.Init,
|
|
UserBadge.Init,
|
|
PointLog.Init,
|
|
Prize.Init,
|
|
Redemption.Init,
|
|
AdminUser.Init,
|
|
LifeTask.Init,
|
|
LifeTaskLog.Init,
|
|
}
|
|
|
|
// InitTables 创建全部业务表与索引(IF NOT EXISTS 幂等)。
|
|
func InitTables(ctx context.Context) {
|
|
for _, init := range tableInitializers {
|
|
if err := init(ctx); err != nil {
|
|
g.Log().Fatal(ctx, err)
|
|
}
|
|
}
|
|
}
|