Во Flask заканчивается виртуальная среда - PullRequest
0 голосов
/ 13 ноября 2018

Я работал в виртуальной среде, но я специально удалил папку виртуальной среды. Но я все еще могу запустить приложение флака restful, как показано ниже, пока активна новая пустая виртуальная среда (в пакетах сайта нет библиотек, но даже приложение работает как старая виртуальная среда).

flask run 

Я думал, что это не удалось, и жаловался, как:

нет модуля с именем колба

, потому что я удалил старую правильную виртуальную среду и установил новую, затем активировал ее.

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

python3 app.py

Жалуется, как и ожидалось:

нет модуля с именем колба

Кажется, что когда я работаю с flask run, он не использует виртуальную среду, даже виртуальная среда активна. По этой причине я не могу протестировать свое приложение с другими версиями Python и не могу проверить, установлены ли требования и работают ли они в новых других виртуальных средах. Я не мог понять это поведение колбы для любой помощи, которую я ценю.

Заранее спасибо.

Ответы [ 2 ]

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

Ну, я разобрался, что там происходит.

Flask создает каталог с именем local в home и перемещает системный интерпретатор и зависимости туда, включенные в приложение колбы, которое я написал.

Затем приложение развертывается оттуда при запуске с flask run.Это означает, что мое приложение-колба не было запущено в виртуальной среде, как мы предполагаем.

Так что в этом случае я воссоздал свою виртуальную среду и после установки зависимостей я запускаю с python3 app.py.Теперь кажется, что он использует зависимости виртуальной среды и интерпретатор.

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

Возможно, у вас установлена ​​колба по всему миру.

список пунктов | grep склянка

Вы можете удалить это:

колба для удаления пипсов

или

Создать virtualenv с опцией --no-site-packages:

virtualenv --no-site-packages venv

источник venv / bin / activ

...