config.py 836 B

1234567891011121314151617181920212223242526272829
  1. from pydantic_settings import BaseSettings
  2. from typing import List
  3. class Settings(BaseSettings):
  4. # 基础配置
  5. PROJECT_NAME: str = "Alien Cloud Python"
  6. API_V1_STR: str = "/api/v1"
  7. # 鉴权配置 (原 alien-gateway 职责)
  8. SECRET_KEY: str = "your-super-secret-key-change-me"
  9. ALGORITHM: str = "HS256"
  10. ACCESS_TOKEN_EXPIRE_MINUTES: int = 60 * 24 * 7 # 7天
  11. # 数据库配置
  12. DB_USER: str = "root"
  13. DB_PASSWORD: str = "password"
  14. DB_HOST: str = "localhost"
  15. DB_PORT: int = 3306
  16. DB_NAME: str = "alien_cloud"
  17. @property
  18. def SQLALCHEMY_DATABASE_URI(self) -> str:
  19. return f"mysql+pymysql://{self.DB_USER}:{self.DB_PASSWORD}@{self.DB_HOST}:{self.DB_PORT}/{self.DB_NAME}"
  20. class Config:
  21. case_sensitive = True
  22. env_file = ".env"
  23. settings = Settings()