SQLAlchemy не создает таблицы в приложении Azure Flask - Как выполнить миграцию с локального разработчика? - PullRequest
0 голосов
/ 28 апреля 2019

Я пытаюсь развернуть веб-приложение на фляге в Azure, используя базу данных postgresql.Я не могу получить приложение для создания схемы.Он подключается, но, похоже, не создает схему.

Когда я делаю локальный dev, я создал схему с использованием командной строки

$ flask db init

и внес различные изменения в db во время локальногодевиацияТеперь я хочу создать таблицы БД и выполнить все связанные миграции, которые ранее происходили с помощью

$ flask db migrate

. В Azure я просто получаю сообщение об ошибке

psycopg2.errors.UndefinedColumn: column "username" does not exist

Я пыталсяв SSH и запустить эти команды, но он говорит

root@cb14962d3dff:/home/site/wwwroot# flask db init
Usage: flask [OPTIONS] COMMAND [ARGS]...
Try "flask --help" for help.

Error: No such command "db".
from flask_migrate import Migrate

class Config(object):
    # ...
    SECRET_KEY = os.environ.get('SECRET_KEY') or os.urandom(12)
    USERNAME = os.environ.get('DB_USERNAME')
    PASSWORD = os.environ.get('DB_PASSWORD')
    URL = os.environ.get('DB_URL')
    if USERNAME:
        SQLALCHEMY_DATABASE_URI = 'postgresql+psycopg2://' + USERNAME + ':' + PASSWORD  + '@' + URL + ':5432/postgres'
    else:
        SQLALCHEMY_DATABASE_URI = 'sqlite:///' + os.path.join(basedir, 'app.db')
    SQLALCHEMY_TRACK_MODIFICATIONS = False

server = Flask(__name__)
server.config.from_object(Config)

db = SQLAlchemy(server)
migrate = Migrate(server, db)

Все это подключается и, кажется, ведет себя нормально.Я просто не знаю, как выполнить эту миграцию в Azure, и не могу найти какие-либо соответствующие документы или вопросы!Кажется, этот пример говорит о том, что это все, что мне нужно: https://github.com/Azure-Samples/flask-postgresql-app/blob/master/app/app.py

Как мне создать схему в соответствии с миграциями и обновить ее по мере разработки?Я намерен продолжать разработку на местном уровне, поэтому мне нужно иметь возможность регулярно выполнять эти миграции.

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