Как запустить приложение Flask при помощи колбы с шаблоном чертежа - PullRequest
0 голосов
/ 31 октября 2019

В приложении авторизации Python в моем основном py у меня есть следующий код:

# main.py

from flask import Blueprint, render_template
from flask_login import login_required, current_user

theapp = Blueprint('main', __name__)

@theapp.route('/')

def index():
return render_template('index.html')

Когда я пытаюсь:

FLASK_APP=main.py
FLASK_DEBUG=1
flask run

Я получаю следующую ошибку:

Error: Could not locate a Flask application. You did not provide the "FLASK_APP" environment variable, and a "wsgi.py" or "app.py" module was not found in the current directory.

1 Ответ

1 голос
/ 31 октября 2019

По сути, Blueprint - это способ организовать приложение для колб в более мелкие и многократно используемые приложения. Я не уверен, почему вы использовали это здесь, в main.py. Вы можете сделать это в другом файле, например, у вас есть набор конечных точек для реализации функции входа в систему в отдельном файле, тогда что вы должны сделать так:

Предположим, у вас есть login.py. Образцы кодакак следует:

from flask import Blueprint
bp = Blueprint('login_bp', __name__)

def login_bp():
    return bp

И следующий код входит в вас main.py, вам нужно запустить Flask Server, используя .run()

from flask import Flask
from flask import Blueprint, render_template
from login import login_bp  #Assume you have a module login and  I am importing login_bp from login.py 

theapp = Flask(__name__) #Creating Flask instance
theapp.register_blueprint(login_bp()) # Registering Blueprint here 

@theapp.route('/')
def index():
    return render_template('index.html')


theapp.run(host="0.0.0.0", port=2019, debug=True) #Starting the Flask Server

Надеюсь, что это работает, пожалуйста, посмотритедля документов и пример кода, чтобы получить более глубокое понимание.

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