api/app/core/config.py
2025-04-09 10:49:02 +08:00

41 lines
1.3 KiB
Python

from pydantic_settings import BaseSettings
from typing import Optional, List
import os
from dotenv import load_dotenv
load_dotenv()
class Settings(BaseSettings):
API_V1_STR: str = "/api/v1"
PROJECT_NAME: str = "美搭Meida API"
PROJECT_DESCRIPTION: str = "美搭Meida服务后端API"
PROJECT_VERSION: str = "0.1.0"
# CORS设置
BACKEND_CORS_ORIGINS: List[str] = ["*"]
# 数据库设置
DB_HOST: str = os.getenv("DB_HOST", "localhost")
DB_PORT: str = os.getenv("DB_PORT", "3306")
DB_USER: str = os.getenv("DB_USER", "root")
DB_PASSWORD: str = os.getenv("DB_PASSWORD", "password")
DB_NAME: str = os.getenv("DB_NAME", "meida")
DB_ECHO: bool = os.getenv("DB_ECHO", "False").lower() == "true"
# DashScope API密钥
DASHSCOPE_API_KEY: str = os.getenv("DASHSCOPE_API_KEY", "sk-caa199589f1c451aaac471fad2986e28")
# 安全设置
SECRET_KEY: str = os.getenv("SECRET_KEY", "your-secret-key-for-jwt-please-change-in-production")
ALGORITHM: str = "HS256"
ACCESS_TOKEN_EXPIRE_MINUTES: int = 60 * 24 * 7 # 7天
# 微信设置
WECHAT_APP_ID: str = os.getenv("WECHAT_APP_ID", "")
WECHAT_APP_SECRET: str = os.getenv("WECHAT_APP_SECRET", "")
class Config:
env_file = ".env"
case_sensitive = True
settings = Settings()