Firebase Admin SDK с ошибкой выдает Flask Нет модуля с именем 'firebase_admin' - PullRequest
0 голосов
/ 11 июня 2019

--- Вопрос закрыт

Это была моя ошибка, мой сценарий запуска uWSGI переключился на другое virtualenv.

--- Исходный вопрос

Я пытаюсь опубликовать push-уведомления со своего сервера приложений Flask на Android APP.

Серверная среда (dev):

  • Mac OS Sierra
  • Flask 1.0.2
  • Python 3.6.5
  • firebase-admin SDK 2.17.0 (последняя версия)

При запуске кода в качестве приложения Flask для инициализации SDK оператор импорта выдает ошибку:

import firebase_admin

ModuleNotFoundError: Нет модуля с именем 'firebase_admin'

Однако выполнение выше оператора import из режима интерпретатора Python не выдает ошибку.PyCharm также может распознавать модуль firebase_admin.Все три установки (приложение Flask, интерпретатор, PyCharm) используют один и тот же virtualenv.

Я пробовал несколько более старых версий SDK, но ошибка сохраняется.Любая подсказка?

--- Подробнее

Модуль был установлен из командной строки в virtualenv с помощью команды pip install firebase-admin.

Ошибка возникает при запуске кода как Flask+ uWSGI приложение из командной строки, в пределах того же virtualenv.pip freeze показывает, что модуль действительно присутствует.

--- Вопрос закрыт

Это была моя ошибка, мой скрипт запуска uWSGI переключается на другое virtualenv.

1 Ответ

0 голосов
/ 11 июня 2019

Как вы установили / добавили пакет firebase_admin в свой проект?

Если вы явно не установили / не добавили пакет, я встречался только с несколькими случаями (могут быть и другиеслучаи / решения), что выдает ошибку ModuleNotFoundError: No module named 'firebase_admin':

PyCharm

Если вы используете PyCharm, вы можете установить / добавить его из настроек PyCharm

  • Файл> Предпочтения> Проект> Интерпретатор проекта
  • Нажмите кнопку добавления, выполните поиск по базе данных, выберите соответствующий пакет: firebase-admin
  • Нажмите кнопку «Установить пакет».

Код Visual Studio / Альтернативная установка

Я использую код Visual Studio и решил установить библиотеки firebase_admin в virtualenv, используя файл requirements.txt, сохраненный в корневом каталоге.Вы все еще можете использовать этот метод, даже если вы используете PyCharm:

1) Активируйте свою среду

2) Создайте файл requirements.txt со следующим содержимым:

firebase_admin
// other packages

3) Выполнить pip install

pip install -r requirements.txt

4) После установки вы можете подтвердить, что это уже доступно, проверив папку site-packages в следующем каталоге:

env/lib/site-packages/firebase_admin
env/lib/site-packages/firebase_admin-<version>.dist-info

5) Попробуйте снова запустить код.

Надеюсь, это поможет!

...