У меня есть несколько приложений, и я использую flask_sqlalchemy со стилем ниже:
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
def create_app():
app = Flask(__name__)
db.init_app(app)
return app
Однако в тесте все приложения связываются с одной и той же базой данных.
после переключения наследующий стиль. Каждое приложение может быть связано с собственной базой данных.
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
def create_app():
app = Flask(__name__)
with app.app_context():
db.init_app(app)
return app
Я не понял, почему? Если второй случай лучше, почему его нет в официальном документе?
credit: я скопировал второй стиль из https://hackingandslacking.com/demystifying-flasks-application-context-c7bd31a53817