Add meilisearch for user and event
Signed-off-by: Asai Neko <sugar@sne.moe>
This commit is contained in:
19
data/data.go
19
data/data.go
@@ -3,13 +3,16 @@ package data
|
||||
import (
|
||||
"nixcn-cms/data/drivers"
|
||||
|
||||
"github.com/meilisearch/meilisearch-go"
|
||||
"github.com/redis/go-redis/v9"
|
||||
log "github.com/sirupsen/logrus"
|
||||
"github.com/spf13/viper"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
var Database *drivers.DBClient
|
||||
var Database *gorm.DB
|
||||
var Redis redis.UniversalClient
|
||||
var MeiliSearch meilisearch.ServiceManager
|
||||
|
||||
func Init() {
|
||||
// Init database
|
||||
@@ -32,7 +35,7 @@ func Init() {
|
||||
}
|
||||
|
||||
// Auto migrate
|
||||
err = db.DB.AutoMigrate(&User{}, &Event{})
|
||||
err = db.AutoMigrate(&User{}, &Event{})
|
||||
if err != nil {
|
||||
log.Error("[Database] Error migrating database: ", err)
|
||||
}
|
||||
@@ -40,16 +43,24 @@ func Init() {
|
||||
|
||||
// Init redis conection
|
||||
rdbAddress := viper.GetStringSlice("cache.hosts")
|
||||
dsn := drivers.RedisDSN{
|
||||
rDSN := drivers.RedisDSN{
|
||||
Hosts: rdbAddress,
|
||||
Master: viper.GetString("cache.master"),
|
||||
Username: viper.GetString("cache.username"),
|
||||
Password: viper.GetString("cache.password"),
|
||||
DB: viper.GetInt("cache.db"),
|
||||
}
|
||||
rdb, err := drivers.Redis(dsn)
|
||||
rdb, err := drivers.Redis(rDSN)
|
||||
if err != nil {
|
||||
log.Fatal("[Redis] Error connecting to Redis: ", err)
|
||||
}
|
||||
Redis = rdb
|
||||
|
||||
// Init meilisearch
|
||||
mDSN := drivers.MeiliDSN{
|
||||
Host: viper.GetString("search.host"),
|
||||
ApiKey: viper.GetString("search.api_key"),
|
||||
}
|
||||
mdb := drivers.MeiliSearch(mDSN)
|
||||
MeiliSearch = mdb
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user