feat: implement custom WebUI support with dynamic frontend replacement
- Add WebUI service and controller for managing custom frontend packages - Allow overriding default static assets when custom WebUI is activated - Add Make commands for packing custom WebUI distributions - Update UI settings to support uploading, activating and deleting WebUIs - Document WebUI feature in README and changelog
This commit is contained in:
@@ -148,15 +148,22 @@ func (s *SettingsService) Get(section, key string) string {
|
||||
func (s *SettingsService) Set(section, key, value string) error {
|
||||
var setting models.Setting
|
||||
res := database.DB.Where(&models.Setting{Section: section, Key: key}).Limit(1).Find(&setting)
|
||||
var err error
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return database.DB.Create(&models.Setting{
|
||||
err = database.DB.Create(&models.Setting{
|
||||
ID: utils.GenerateID(),
|
||||
Section: section,
|
||||
Key: key,
|
||||
Value: models.BigText(value),
|
||||
}).Error
|
||||
} else {
|
||||
err = database.DB.Model(&setting).Update("value", models.BigText(value)).Error
|
||||
}
|
||||
return database.DB.Model(&setting).Update("value", models.BigText(value)).Error
|
||||
|
||||
if err == nil && section == constant.SectionSite {
|
||||
cache.SetSiteCache(key, value)
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
// Delete 删除单个设置
|
||||
|
||||
Reference in New Issue
Block a user