1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package models
 
import (
    commonModels "vamicro/camera-common/models"
    "vamicro/config"
 
    "basic.com/valib/logger.git"
    "github.com/jinzhu/gorm"
    _ "github.com/jinzhu/gorm/dialects/sqlite"
)
 
var db *gorm.DB
var err error
 
// Init creates a connection to mysql database and
// migrates any new models
func Init() {
    db, err = gorm.Open(config.DBconf.Name, "../config/camera-service.db")
 
    
    if err != nil {
        logger.Debug("db open error ", err)
    }
    db.LogMode(true)
    //db.SetLogger(&DbLogger{})
    db.AutoMigrate(&commonModels.Area{}, &commonModels.Camera{}, &commonModels.CameraArea{},
        &commonModels.Sensor{}, &commonModels.CameraSensor{})
    commonModels.SetDB(db)
}
 
// GetDB ...
func GetDB() *gorm.DB {
    return db
}
 
func CloseDB() {
    db.Close()
}