Как запустить оболочку фляги в PyCharm? - PullRequest
2 голосов
/ 03 мая 2019

Я создал новый проект фляги в PyCharm, но не вижу, как запустить оболочку фляги в интегрированной консоли Python PyCharm.

Имя приложения не определено при запуске консоли: Name app is not defined when start console

Я по-прежнему могу запускать команду "командная колба" в интегрированном терминале PyCharm, но она запустится без завершения кода, подсказок, проверки синтаксиса и т. Д.

В терминале определено приложение Flask:

Flask app is defined in terminal Можно ли запустить оболочку фляги во встроенной Python-консоли PyCharm?

Ответы [ 3 ]

1 голос
/ 11 июня 2019

Вы можете использовать комбинацию для создания контекста запроса для Shell (что делает flask shell) и настраиваемый сценарий запуска для консоли PyCharm .

Where to enter starting script in PyCharm preferences

# Step 1: acquire a reference to your Flask App instance
import app
app_instance = app.create_app()
# I return app instance from a factory method here, but might be be `app.app` for basic Flask projects

# Step 2: push test request context so that you can do stuff that needs App, like SQLAlchemy
ctx = app_instance.test_request_context()
ctx.push()

Теперь у вас должны быть преимущества flask shell наряду с завершением кода и другими преимуществами, которые предоставляет оболочка IPython, все из стандартной оболочки PyCharm Python.

0 голосов
/ 03 мая 2019

Запуск оболочки

Для запуска интерактивной оболочки Python вы можете использовать команду оболочки:

flask shell

Это запустит интерактивный Pythonshell, настройте правильный контекст приложения и настройте локальные переменные в оболочке.Это делается путем вызова метода приложения Flask.make_shell_context ().По умолчанию у вас есть доступ к вашему приложению и g.

Это обычная интерактивная оболочка Python с уже настроенными для вас локальными переменными, а не редактор IDE с дополнением кода, подсказками, проверками синтаксиса и т. Д..

0 голосов
/ 03 мая 2019

Подробнее о конфигурации Flask в PyCharm можно прочитать здесь .

Короче говоря, вам нужно создать новую конфигурацию, например flask run с рабочим каталогом и переменными среды. Вы можете скопировать созданную конфигурацию и просто отредактировать Аргумент сценария , чтобы он был flask shell.

...