Skip to content

热更新

你可以直接修改当前项目和 Cosy 包内的 settings 中的结构体字段的值。

如果需要将更新的设置持久化,可以使用 func Save() (err error)

配置格式注意事项

Cosy 支持两种配置格式:INI(默认)和 TOML(使用 toml_settings 构建标签)。

在使用 INI 格式时,MapToReflectFrom 函数完全可用。

在使用 TOML 格式时,MapToReflectFrom 函数仅为兼容性保留,但没有实际功能,因为 TOML 实现直接操作结构体指针。

示例

go
package main

import (
    "github.com/uozi-tech/cosy/logger"
    "github.com/uozi-tech/cosy/settings"
)

func main() {
    // 直接修改设置
    settings.ServerSettings.Port = 8080

    // 保存设置 (兼容两种配置格式)
    err := settings.Save()
    if err != nil {
        logger.Error(err)
        return
    }
}

使用构建标签选择配置格式

可以在构建时通过标签选择使用哪种配置格式:

bash
# 使用默认的 INI 格式
go build

# 使用 TOML 格式
go build -tags toml_settings