extension.py 522 B

1234567891011121314151617181920212223
  1. # -*- coding: utf-8 -*-
  2. # @Author : YY
  3. from flask import Flask
  4. from flask_sqlalchemy import SQLAlchemy as _SQLAlchemy
  5. from .listener import init_listener
  6. class SQLAlchemy(_SQLAlchemy):
  7. def init_app(self, app: Flask) -> None:
  8. """
  9. 初始化SQLAlchemy实例,并注册事件监听器
  10. Args:
  11. app (Flask): flask应用实例
  12. """
  13. super().init_app(app)
  14. for engine in self._app_engines[app].values():
  15. init_listener(engine)
  16. return self