`flask db migrate` error

ぃ、小莉子 提交于 2021-01-29 10:47:26

问题


We are trying to run a flask db migrate and flask db upgrade which throws the following error:

Usage: flask db upgrade [OPTIONS] [REVISION]

Error: The file/path provided (C) does not appear to exist.  Please verify the path 
           is correct.  If app is not on PYTHONPATH, ensure the extension is .py

We have added the app's directory to the PYTHONPATH environment variable but still get the error. Any help would be appreciated.

Below is our __init__.py code. Are we missing something?

import logging
from flask import Flask
from flask_appbuilder import SQLA, AppBuilder

"""
 Logging configuration
"""

logging.basicConfig(format='%(asctime)s:%(levelname)s:%(name)s:%(message)s')
logging.getLogger().setLevel(logging.DEBUG)

app = Flask(__name__)
app.config.from_object('config')
db = SQLA(app)
appbuilder = AppBuilder(app, db.session)
migrate.init_app(app, db)


"""
from sqlalchemy.engine import Engine
from sqlalchemy import event

#Only include this for SQLLite constraints
@event.listens_for(Engine, "connect")
def set_sqlite_pragma(dbapi_connection, connection_record):
    # Will force sqllite contraint foreign keys
    cursor = dbapi_connection.cursor()
    cursor.execute("PRAGMA foreign_keys=ON")
    cursor.close()
"""    

from app import views

回答1:


I think if you are using migrate like you are

migrate.init_app(app, db)  

that you first have to import it and then declare it:

from flask_migrate import Migrate
migrate = Migrate()
migrate.init_app(app, db)

or alternatively I think you could do:

from flask_migrate import Migrate
migrate = Migrate(app, db) 


来源:https://stackoverflow.com/questions/52073561/flask-db-migrate-error

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!