I cannot get Flask Migrate to work. I have flaskr folder where I store __init__.py and then I have main.py on the same branch as flaskr.
Once I run flask db migrate -m I get following error: Error: No such command 'db'.
**main.py**
from flaskr import create_app
app = create_app()
if __name__ == "__main__":
app.run(debug=True)
**__init__.py**
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from os import path
from flask_login import LoginManager
from flask_migrate import Migrate
from zzz_secrets import DB_NAME, FLASK_PSW, MYSQL_PSW
db = SQLAlchemy()
def create_app():
app = Flask(__name__)
app.config["SECRET_KEY"] = FLASK_PSW
app.config[
"SQLALCHEMY_DATABASE_URI"
] = f"mysql+pymysql://root:{MYSQL_PSW}@localhost/{DB_NAME}"
db.init_app(app)
from .views import views
from .auth import auth
app.register_blueprint(views, url_prefix="/")
app.register_blueprint(auth, url_prefix="/")
from .models import User, Note, Investment, Trade, Transaction_Type
with app.app_context():
db.create_all()
login_manager = LoginManager()
login_manager.login_view = "auth.login"
login_manager.init_app(app)
@login_manager.user_loader
def load_user(id):
return User.query.get(int(id))
migrate = Migrate(app, db)
return app
def create_database(app):
if not path.exists("website/" + DB_NAME):
db.create_all(app=app)
print("Created Database!")