model.go 653 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package models
  2. import (
  3. "fmt"
  4. "git.qianqiusoft.com/qianqiusoft/light-apiengine/config"
  5. "github.com/xormplus/xorm"
  6. "sync"
  7. )
  8. var beans []interface{}
  9. var ModelNameList []string
  10. var beansLock sync.Mutex
  11. func RegisterModel(models ...interface{}) {
  12. beansLock.Lock()
  13. defer beansLock.Unlock()
  14. for _, model := range models {
  15. beans = append(beans, model)
  16. }
  17. }
  18. func AddTableName(tableName string) {
  19. beansLock.Lock()
  20. defer beansLock.Unlock()
  21. ModelNameList = append(ModelNameList, tableName)
  22. }
  23. func SyncDb(db *xorm.Engine) {
  24. if !config.AppConfig.SyncDb {
  25. return
  26. }
  27. err := db.Sync2(beans);
  28. if err != nil {
  29. fmt.Println(err)
  30. }
  31. }