Happy_language/config/__init__.py
2025-09-15 00:15:37 +08:00

51 lines
1.7 KiB
Python

import os
from datetime import timedelta
class Config:
# 基础配置
SECRET_KEY = os.environ.get('SECRET_KEY') or 'your-secret-key-here-change-in-production'
# 数据库配置
MYSQL_HOST = os.environ.get('MYSQL_HOST', '119.91.236.167')
MYSQL_PORT = int(os.environ.get('MYSQL_PORT', 3306))
MYSQL_USER = os.environ.get('MYSQL_USER', 'Language_learning')
MYSQL_PASSWORD = os.environ.get('MYSQL_PASSWORD', 'cosyvoice')
MYSQL_DB = os.environ.get('MYSQL_DB', 'language_learning')
SQLALCHEMY_DATABASE_URI = f'mysql+pymysql://{MYSQL_USER}:{MYSQL_PASSWORD}@{MYSQL_HOST}:{MYSQL_PORT}/{MYSQL_DB}?charset=utf8mb4'
SQLALCHEMY_TRACK_MODIFICATIONS = False
SQLALCHEMY_ENGINE_OPTIONS = {
'pool_pre_ping': True,
'pool_recycle': 300,
}
# 邮箱配置
EMAIL_HOST = os.environ.get('EMAIL_HOST', 'smtp.qq.com')
EMAIL_PORT = int(os.environ.get('EMAIL_PORT', 587))
EMAIL_ENCRYPTION = os.environ.get('EMAIL_ENCRYPTION', 'starttls')
EMAIL_USERNAME = os.environ.get('EMAIL_USERNAME', '3399560459@qq.com')
EMAIL_PASSWORD = os.environ.get('EMAIL_PASSWORD', 'fzwhyirhbqdzcjgf')
EMAIL_FROM = os.environ.get('EMAIL_FROM', '3399560459@qq.com')
EMAIL_FROM_NAME = os.environ.get('EMAIL_FROM_NAME', 'BOOKSYSTEM_OFFICIAL')
# Session配置
PERMANENT_SESSION_LIFETIME = timedelta(hours=24)
# 验证码配置
VERIFICATION_CODE_EXPIRE_MINUTES = 5
# 文件上传配置
MAX_CONTENT_LENGTH = 100 * 1024 * 1024 # 100MB
class DevelopmentConfig(Config):
DEBUG = True
class ProductionConfig(Config):
DEBUG = False
config = {
'development': DevelopmentConfig,
'production': ProductionConfig,
'default': DevelopmentConfig
}