import os from dotenv import load_dotenv # 加载环境变量 load_dotenv() class Config: """基础配置""" # 密钥配置 SECRET_KEY = os.environ.get('SECRET_KEY') or 'dev-secret-key-change-in-production' # 数据库配置 DB_HOST = os.environ.get('DB_HOST') or 'localhost' DB_PORT = os.environ.get('DB_PORT') or '3306' DB_USER = os.environ.get('DB_USER') or 'root' DB_PASSWORD = os.environ.get('DB_PASSWORD') or '' DB_NAME = os.environ.get('DB_NAME') or 'ai_nav' SQLALCHEMY_DATABASE_URI = f'mysql+pymysql://{DB_USER}:{DB_PASSWORD}@{DB_HOST}:{DB_PORT}/{DB_NAME}?charset=utf8mb4' SQLALCHEMY_TRACK_MODIFICATIONS = False SQLALCHEMY_ECHO = False # 分页配置 SITES_PER_PAGE = 20 # 上传文件配置 UPLOAD_FOLDER = 'static/uploads' MAX_CONTENT_LENGTH = 5 * 1024 * 1024 # 5MB ALLOWED_EXTENSIONS = {'png', 'jpg', 'jpeg', 'gif', 'webp'} class DevelopmentConfig(Config): """开发环境配置""" DEBUG = True SQLALCHEMY_ECHO = True class ProductionConfig(Config): """生产环境配置""" DEBUG = False SQLALCHEMY_ECHO = False # 配置字典 config = { 'development': DevelopmentConfig, 'production': ProductionConfig, 'default': DevelopmentConfig }