59 lines
1.8 KiB
Python
59 lines
1.8 KiB
Python
import os
|
|
from datetime import timedelta
|
|
from dotenv import load_dotenv
|
|
|
|
load_dotenv()
|
|
|
|
class Config:
|
|
"""基础配置"""
|
|
# Flask配置
|
|
SECRET_KEY = os.getenv('SECRET_KEY', 'dev-secret-key-change-in-production')
|
|
|
|
# 数据库配置
|
|
SQLALCHEMY_DATABASE_URI = os.getenv('DATABASE_URI', 'sqlite:///nba_transfer.db')
|
|
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
|
|
|
# JWT配置
|
|
JWT_SECRET_KEY = os.getenv('JWT_SECRET_KEY', 'jwt-secret-key-change-in-production')
|
|
JWT_ACCESS_TOKEN_EXPIRES = timedelta(hours=24)
|
|
JWT_REFRESH_TOKEN_EXPIRES = timedelta(days=30)
|
|
|
|
# 邮件配置
|
|
MAIL_SERVER = os.getenv('MAIL_SERVER', 'smtp.qq.com')
|
|
MAIL_PORT = int(os.getenv('MAIL_PORT', 465))
|
|
MAIL_USE_TLS = os.getenv('MAIL_USE_TLS', 'False') == 'True'
|
|
MAIL_USE_SSL = os.getenv('MAIL_USE_SSL', 'True') == 'True'
|
|
MAIL_USERNAME = os.getenv('MAIL_USERNAME')
|
|
MAIL_PASSWORD = os.getenv('MAIL_PASSWORD')
|
|
MAIL_DEFAULT_SENDER = os.getenv('MAIL_USERNAME')
|
|
|
|
# 支付配置
|
|
WECHAT_PAY_APP_ID = os.getenv('WECHAT_PAY_APP_ID')
|
|
WECHAT_PAY_MCH_ID = os.getenv('WECHAT_PAY_MCH_ID')
|
|
WECHAT_PAY_API_KEY = os.getenv('WECHAT_PAY_API_KEY')
|
|
ALIPAY_APP_ID = os.getenv('ALIPAY_APP_ID')
|
|
ALIPAY_PRIVATE_KEY = os.getenv('ALIPAY_PRIVATE_KEY')
|
|
ALIPAY_PUBLIC_KEY = os.getenv('ALIPAY_PUBLIC_KEY')
|
|
|
|
# 注意:
|
|
# 模型 API 配置 (DeepSeek, NanoBanana) 和 价格策略
|
|
# 已迁移至 modelapiservice 模块下的 config.py 中独立管理
|
|
# 此处不再保留,避免重复定义和混乱
|
|
|
|
|
|
class DevelopmentConfig(Config):
|
|
"""开发环境配置"""
|
|
DEBUG = True
|
|
|
|
|
|
class ProductionConfig(Config):
|
|
"""生产环境配置"""
|
|
DEBUG = False
|
|
|
|
|
|
config = {
|
|
'development': DevelopmentConfig,
|
|
'production': ProductionConfig,
|
|
'default': DevelopmentConfig
|
|
}
|