Я пытаюсь использовать фрагмент Войти с помощью SteamID с сайта Flask. Однако я получаю ImportError: No module named flaskext.sqlalchemy
, когда пытаюсь запустить его, а PyCharm говорит Uresolved reference "flaskext"
и Uresolved reference "OpenID"
. Я переустановил Flask-OpenID и Flask-SQLAlchemy, чтобы убедиться, что они там есть. Почему я получаю эту ошибку и как ее исправить?
ImportError: нет модуля с именем flaskext.sqlalchemy
comment
Поскольку эти фрагменты больше не публикуются, вот их архивная копия для потомков: https://web.archive.org/web/20190207193459/http://flask.pocoo.org/snippets/42/
- person SuperShoot   schedule 03.09.2019
Ответы (1)
Этот фрагмент действительно старый. flaskext
больше нет (или, по крайней мере, очень устарел). Обращайтесь к пакетам напрямую, а не через flaskext
или flask.ext
.
from flask_sqlalchemy import SQLAlchemy
Flask-SQLAlchemy (и большинство других расширений) больше не регистрируются в пространстве имен flaskext
, а flask.ext
устарел затем удален в 1.0. Единственный правильный способ ссылаться на расширения сейчас - это напрямую импортировать их.
Если вы по-прежнему получаете сообщение об ошибке импорта, значит, вы не установили пакет в той же среде Python, в которой работаете. Убедитесь, что вы используете virtualenv.
person
davidism
schedule
05.08.2015