Настой и SQLAlchemy, приложение не зарегистрировано в экземпляре
В настоящее время я пытаюсь собрать небольшое приложение Flask. Это моя структура.
run.py
application
__init__.py
database.py
models.py
views.py
database.py
содержит только объект SQLAlchemy:
db = SQLAlchemy()
Затем я импортирую это в мойmodels.py
создавать свои модели. Наконец, внутри__init__.py
Я импортируюdb
отdatabase.py
и делать:
from .database import db
from flask import Flask
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///application.db'
db.init_app(app)
db.create_all()
Тем не менее, я не могу создать таблицы из моделей, которые появляются. Если я удалюdb.create_all()
, Приложение будет работать без проблем, но, очевидно, база данных не будет создана. когдаdb.create_all()
Присутствует «RuntimeError: приложение не зарегистрировано в экземпляре БД и приложение не привязано к текущему контексту».
Я честно запутался, так как раньше у меня были проблемы с запуском приложения без создания базы данных, но с перемещениемdb
к его собственному файлу, кажется, как-то исправили эту проблему. Теперь единственной проблемой остается создание базы данных.
Может кто-нибудь сказать мне, в чем может быть проблема? Я действительно в тупик.