В настоящее время я кодирую простое веб-приложение, используя флягу и flask_login. Это main.py
:колба и флак_login - избегать импорта flask_login из основного кода
import flask
import flask_login
app = flask.Flask(__name__)
login_manager = flask_login.LoginManager()
login_manager.init_app(app)
@app.route('/')
@flask_login.login_required
def index():
return "Hello World!"
Приведенный выше код работает. Проблема возникает из-за того, что я хочу отделить код, связанный с аутентификацией, от кода приложения основной колбы. Другими словами, я хочу my_auth.py
, который импортирует flask_login
, и я хочу main.py
до import my_auth
, и НЕ должен импортировать flask_login
.
Проблема с декоратором @flask_login.login_required
. Если я не импортирую flask_login
из main.py
, можно ли как-то «обернуть» основную функцию index()
с помощью login_required
?
(я на самом деле задал неправильный вопрос раньше, которые все еще могут иметь отношение: flask and flask_login - organizing code)
Почему вы не хотите импортировать 'flask_login' в' main.py'? –
Разделение проблем - пытаясь понять, насколько я могу отделить сторону входа от основного кода. – wookie919
Проблемы уже разделены: у вас есть отдельный модуль под названием «flask_login», который обеспечивает регистрацию. – davidism