| 1234567891011121314151617181920212223242526272829303132 |
- package config
- import "os"
- // Config 应用配置
- type Config struct {
- Port string // 服务端口
- DBPath string // SQLite 数据库文件路径
- PageSize int // 默认分页大小
- AdminPass string // 后台管理密码
- UploadDir string // 图片上传目录
- }
- // Load 加载配置,支持环境变量覆盖
- func Load() *Config {
- uploadDir := getEnv("UPLOAD_DIR", "uploads")
- cfg := &Config{
- Port: getEnv("PORT", "8080"),
- DBPath: getEnv("DB_PATH", "data/notes.db"),
- PageSize: 20,
- AdminPass: getEnv("ADMIN_PASS", "admin123"),
- UploadDir: uploadDir,
- }
- return cfg
- }
- func getEnv(key, defaultValue string) string {
- if value := os.Getenv(key); value != "" {
- return value
- }
- return defaultValue
- }
|