from flask import Flask from config import Config from app.extensions import db, migrate, cors def create_app(): app = Flask(__name__) app.config.from_object(Config) # 初始化插件 db.init_app(app) migrate.init_app(app, db) # 确保跨域配置正确,允许前端访问 cors.init_app(app, resources={r"/api/*": {"origins": "*"}}) # --- 注册蓝图 --- # 1. 保持原有的 stocks 模块 try: from app.api.v1.stocks import stocks_bp app.register_blueprint(stocks_bp, url_prefix='/api/v1/stocks') except ImportError as e: print(f"⚠️ 警告: 原有 stocks 蓝图导入失败: {e}") # 2. 注册新的入库聚合蓝图 # 核心:必须先导入,再注册。路径对应 app/api/v1/inbound/__init__.py try: from app.api.v1.inbound import inbound_bp # 最终路径结构:/api/v1/inbound/buy/list app.register_blueprint(inbound_bp, url_prefix='/api/v1/inbound') print("✅ 入库模块蓝图注册成功") except ImportError as e: print(f"❌ 严重错误: 入库模块 inbound 蓝图导入失败: {e}") # 打印路由映射,仅在本地调试时建议开启 # with app.app_context(): # print(app.url_map) return app