Python 3.6 Flask ImportError: невозможно импортировать имя 'flash' - PullRequest
0 голосов
/ 09 ноября 2018

У меня постоянно возникает ошибка ImportError: cannot import name 'flash' при попытке выполнить команду airflow webserver.

Установлены различные пакеты, включая flask-login, flask, flask-cache, flask-wtf и т. Д. Это на сервере без подключения к Интернету, мне пришлось перенести эти пакеты вручную и запустить conda install <package> --offline

Полный возврат

/usr/local/anaconda/lib/python3.6/site-packages/flask_cache/jinja2ext.py:33: ExtDeprecationWarning: Importing flask.ext.cache is deprecated, use flask_cache instead.
  from flask.ext.cache import make_template_fragment_key
Traceback (most recent call last):
  File "/usr/local/anaconda/bin/airflow", line 27, in <module>
    args.func(args)
  File "/usr/local/anaconda/lib/python3.6/site-packages/airflow/bin/cli.py", line 678, in webserver
    app = cached_app(conf)
  File "/usr/local/anaconda/lib/python3.6/site-packages/airflow/www/app.py", line 161, in cached_app
    app = create_app(config)
  File "/usr/local/anaconda/lib/python3.6/site-packages/airflow/www/app.py", line 59, in create_app
    from airflow.www import views
  File "/usr/local/anaconda/lib/python3.6/site-packages/airflow/www/views.py", line 46, in <module>
    from flask_login import flash
ImportError: cannot import name 'flash'

Спасибо.

1 Ответ

0 голосов
/ 09 ноября 2018

Как я уже писал в комментарии, библиотека Python flask-login не имеет модуля или функции с именем flash. Поэтому вы не можете писать в своем коде, который присутствует в строке 46 в views.py:

from flask-login import flash

Однако эта функция присутствует в библиотеке Python flask. Поэтому измените на:

from flask import flash

...