Я строю небольшой API-интерфейс restful, используя flask
в качестве моей платформы.Я использую Pycharm в качестве моей IDE.Я определяю фабрику приложений, которая указывает на файл конфигурации в каталоге моего экземпляра.Моя проблема в том, что Pycharm игнорирует файл конфигурации и использует сервер Flask со значением по умолчанию ENV values
.Как я могу сказать Pycharm использовать ENV
значения, определенные в файле конфигурации.
Я создал новую конфигурацию запуска / отладки, убедился, что путь к сценарию указан правильно, я отменил выбор всех конфигураций по умолчанию
# my app factory /todo_api/__init__.py
from flask import Flask, render_template
from . import models
def create_app(test_config=None):
app = Flask(__name__, instance_relative_config=True)
app.config.from_pyfile('dev_config.py')
@app.route('/hello')
def hello_world():
return 'Hello World'
@app.route('/')
def my_todos():
return render_template('index.html')
return app
#my config at /instance/dev_config.py
HOST = '0.0.0.0'
PORT = 8000
SECRET_KEY = 'GWK~M$F2"|[|i|,KEJWxvA5~JQN!}fUz>|&h`>g.K2/p)%t3%4P:tuR6G6A'
DEFAULT_RATE = "100/hour"
# at server initialization on local machine I expect to see:
* Serving Flask app "todo_api/__init__.py:create_app"
* Environment: development
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: on
* Running on http://127.0.0.0:8000/ (Press CTRL+C to quit)
# actual results
* Serving Flask app "todo_api/__init__.py:create_app"
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)