Подтвердить что ты не робот

New to flask и Flask-Login - ImportError: нет имени модуля с именем

Похоже, что установка флажка-входа имеет проблемы. Несмотря на успешную установку с использованием ниже

 pip install flask-login

Мой файл app.py:

 from flaskext.login import LoginManager
 lm = LoginManager()

Я получаю эту ошибку:

ImportError: No module named login

Итак, как мне разрешить

4b9b3361

Ответ 1

Произошел переход пути импорта расширений колбы:

Вместо этого мы теперь рекомендуем присваивать имена пакетам flask_foo вместо устаревших flaskext.foo. В фляге 0.8 вводится система импорта переадресации, которая позволяет использовать импорт из flask.ext.foo, и сначала попытается выполнить flask_foo, и если это не сработает flaskext.foo.

Расширения флэков должны побуждать пользователей импортировать из flask.ext.foo вместо flask_foo или flaskext_foo, чтобы расширения могли перейти к новому имени пакета, не затрагивая пользователей. (Источник)

Используйте этот способ импорта с Flask 0.8 или новее:

from flask.ext.login import LoginManager

Ответ 2

Для флеш-входа 0.3.2 и более поздних версий следующим образом:

from flask_login import LoginManager

чтобы найти версию флажка-входа, вы можете запустить следующую команду в терминале. Просто измените имя, чтобы узнать версию других пакетов.

pip show flask-login

Примечание: - не знаете, из какой версии флажка-входа это соглашение соблюдается

Ответ 3

sudo pip install Flask-Security