fix: settings sql
This commit is contained in:
@@ -8,7 +8,7 @@ import (
|
|||||||
type Setting struct {
|
type Setting struct {
|
||||||
ID uint `json:"id" gorm:"primaryKey"`
|
ID uint `json:"id" gorm:"primaryKey"`
|
||||||
Section string `json:"section" gorm:"size:50;not null;index:idx_section_key"`
|
Section string `json:"section" gorm:"size:50;not null;index:idx_section_key"`
|
||||||
Key string `json:"key" gorm:"column:setting_key;size:100;not null;index:idx_section_key"`
|
Key string `json:"key" gorm:"size:100;not null;index:idx_section_key"`
|
||||||
Value string `json:"value" gorm:"type:text"`
|
Value string `json:"value" gorm:"type:text"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ func (s *SettingsService) InitSettings() error {
|
|||||||
for section, keys := range constant.DefaultSettings {
|
for section, keys := range constant.DefaultSettings {
|
||||||
for key, value := range keys {
|
for key, value := range keys {
|
||||||
var count int64
|
var count int64
|
||||||
database.DB.Model(&models.Setting{}).Where("section = ? AND key = ?", section, key).Count(&count)
|
database.DB.Model(&models.Setting{}).Where("section = ? AND `key` = ?", section, key).Count(&count)
|
||||||
if count == 0 {
|
if count == 0 {
|
||||||
if err := database.DB.Create(&models.Setting{Section: section, Key: key, Value: value}).Error; err != nil {
|
if err := database.DB.Create(&models.Setting{Section: section, Key: key, Value: value}).Error; err != nil {
|
||||||
return err
|
return err
|
||||||
@@ -36,7 +36,7 @@ func (s *SettingsService) Get(section, key string) string {
|
|||||||
return cache.GetSiteCache(key)
|
return cache.GetSiteCache(key)
|
||||||
}
|
}
|
||||||
var setting models.Setting
|
var setting models.Setting
|
||||||
if err := database.DB.Where("section = ? AND key = ?", section, key).First(&setting).Error; err != nil {
|
if err := database.DB.Where("section = ? AND `key` = ?", section, key).First(&setting).Error; err != nil {
|
||||||
if def, ok := constant.DefaultSettings[section][key]; ok {
|
if def, ok := constant.DefaultSettings[section][key]; ok {
|
||||||
return def
|
return def
|
||||||
}
|
}
|
||||||
@@ -48,7 +48,7 @@ func (s *SettingsService) Get(section, key string) string {
|
|||||||
// Set 设置单个值
|
// Set 设置单个值
|
||||||
func (s *SettingsService) Set(section, key, value string) error {
|
func (s *SettingsService) Set(section, key, value string) error {
|
||||||
var setting models.Setting
|
var setting models.Setting
|
||||||
if database.DB.Where("section = ? AND key = ?", section, key).First(&setting).Error != nil {
|
if database.DB.Where("section = ? AND `key` = ?", section, key).First(&setting).Error != nil {
|
||||||
return database.DB.Create(&models.Setting{Section: section, Key: key, Value: value}).Error
|
return database.DB.Create(&models.Setting{Section: section, Key: key, Value: value}).Error
|
||||||
}
|
}
|
||||||
return database.DB.Model(&setting).Update("value", value).Error
|
return database.DB.Model(&setting).Update("value", value).Error
|
||||||
|
|||||||
Reference in New Issue
Block a user