fix: settings sql

This commit is contained in:
engigu
2025-12-21 10:38:48 +08:00
parent a740fbb955
commit 2ae53f0ac7
2 changed files with 4 additions and 4 deletions
+1 -1
View File
@@ -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"`
} }
+3 -3
View File
@@ -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