集成生成和开发环境分别的启动方式

This commit is contained in:
2025-08-17 21:25:55 +08:00
parent c869cc4911
commit 0ce2d2eab6
37 changed files with 3139 additions and 80 deletions

View File

@@ -1,23 +1,40 @@
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_migrate import Migrate
from src.flask_prompt_master.config import Config
import os
from flask_cors import CORS
import os
from dotenv import load_dotenv
# 加载环境变量
load_dotenv()
# 导入新的配置系统
from config import get_config
# 初始化扩展
db = SQLAlchemy()
migrate = Migrate()
def create_app(config_class=Config):
def create_app(config_class=None):
"""
应用工厂函数
使用新的配置系统自动选择环境配置
"""
app = Flask(__name__,
template_folder='templates',
static_folder='../static')
# 如果没有指定配置类,使用新的配置系统
if config_class is None:
config_class = get_config()
app.config.from_object(config_class)
# 初始化配置
config_class.init_app(app)
# 启用跨域支持
CORS(app)
CORS(app, origins=app.config.get('CORS_ORIGINS', ['*']))
# 初始化扩展
db.init_app(app)
@@ -27,4 +44,9 @@ def create_app(config_class=Config):
from src.flask_prompt_master.routes import main_bp
app.register_blueprint(main_bp)
# 记录应用启动信息
app.logger.info(f"应用启动 - 环境: {os.environ.get('FLASK_ENV', 'development')}")
app.logger.info(f"调试模式: {app.config.get('DEBUG', False)}")
app.logger.info(f"数据库: {app.config.get('SQLALCHEMY_DATABASE_URI', 'Not set')}")
return app