Как (или где) я могу вызвать db.create_all () в многофайловом flask проекте? - PullRequest
0 голосов
/ 25 марта 2020

У меня есть многофайловый flask проект, в котором у меня есть одна модель и несколько маршрутов. Изначально проект представлял собой один файл app.py, и я смог запустить db.create_all () в этом файле. Теперь, когда у меня сложный импорт с моей многофайловой структурой, мне интересно, как бы я go создал таблицы, определенные в моем файле models.py.

Структура приложения:

app/
    __init__.py
    config.py
    extensions.py
    models.py
    routes.py
.env
.flaskenv
Pipfile
Pipfile.lock

1 Ответ

0 голосов
/ 27 марта 2020

Я решил свою проблему с помощью следующих строк кода в моем файле __init__.py:

with app.app_context():
    db.create_all()

Раньше я просто вызывал db.create_all (), но без контекста приложения это не удавалось. Более подробную информацию об этом можно найти по адресу: https://flask-sqlalchemy.palletsprojects.com/en/2.x/contexts/.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...