Je veux exécuter des commandes à partir du terminal avec la commande 'flask' mais cela ne fonctionne pas.
Voici la structure de mon projet.
FlaskUserAuthentication
FlaskUserAuthentication
API
__init__.py
db_models.py
routes.py
Site
__init__.py
routes.py
static
form_style.css
templates
Site
base_layout.html
index.html
logout.html
profile.html
signin.html
signup.html
__init__.py
commands.py
run.py
venv
Comme le flask run
exécute l'application, je suis sûr que ma variable d'environnement est correctement définie. Cependant, lorsque j'essaie d'utiliser la commande flask-cli comme-
flask create_db
J'ai compris, Error: No such command "create_db".
Ce qui suit est mon FlaskUserAuthentication/commands.py
fichier-
from FlaskUserAuthentication import app, db
from FlaskUserAuthentication.API.db_models import Group, Member, Project, Milestone
@app.cli.command('create_db')
def createDatabase():
db.create_all()
print('***** Datebase created ****')
#....some more commands
et le FlaskUserAuthentication/__init__.py
(où l'instance de l'application Flask est initiée)-
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SECRET_KEY'] = 'justasamplekey'
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///database.db'
db = SQLAlchemy(app)
from FlaskUserAuthentication.API.routes import api
from FlaskUserAuthentication.Site.routes import site
app.register_blueprint(api)
app.register_blueprint(site)