I have a file
db_table.py that looks like:
from flask import Flask from flask_sqlalchemy import SQLAlchemy from flask_migrate import Migrate app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:password@localhost/mydb' db = SQLAlchemy(app) migrate = Migrate(app, db) .....db tables....
When I try to run:
flask db init
Error: Could not locate Flask application. You did not provide the FLASK_APP environment variable.
I tried first manually setting
FLASK_APP var, by doing
set FLASK_APP=app.py then running
flask db init again, but that didn’t resolve the issue.
flask command line argument needs to know what module to locate the current
Flask app instance in.
FLASK_APP as an environment variable:
before running your
flask command-line app.
See the Command Line Interface documentation:
For the flask script to work, an application needs to be discovered. This is achieved by exporting the
FLASK_APPenvironment variable. It can be either set to an import path or to a filename of a Python module that contains a Flask application.
You can also set the variable per command by setting it on the same command line:
FLASK_APP=db_table.py flask db init