내 플라스크 응용 프로그램의 config.py
에 나는 LocalConfig
과 ProdConfig
이 있으며, 일단 응용 프로그램이 배포되면 프로덕션에 사용됩니다.create_app를 사용하여 uwsgi에 플라스크 응용 프로그램의 다른 구성 설정을 제공하는 방법은 무엇입니까?
이제 을 사용하여 Nginx
에 앱을 제공합니다. 여기에서 myapp.wsgi
을 만들었습니다. 그것은 uWSGI
제대로, 내가 알고 싶은
def create_app(config=None, app_name=None, blueprints=None):
# some code
app = Flask(app_name, instance_path=INSTANCE_FOLDER_PATH, instance_relative_config=True)
configure_app(app, config)
# some other code
return app
def configure_app(app, config=None):
"""Different ways of configurations."""
app.config.from_object(LocalConfig)
app.config.from_pyfile('production.cfg', silent=True)
if config:
app.config.from_object(config)
됩니다
from myapp import create_app
from myapp.config import ProdConfig
app = create_app(config=ProdConfig)
및 create_app
app.py
다른 하나 는 다음과 같이 정의된다? uWSGI가 ProdConfig
을 성공적으로 적용 할 수 있습니까?
다른 환경 설정을 구별하기 위해 환경 변수를 사용하는 것이 더 낫습니까? if os.environ.get('PROD', True): #do something
?
어느 쪽이 더 낫습니까? 플라스크의 create_app()
하나 또는 env 변수 하나? 다른 적절한 접근법은 무엇입니까?