Introduce config file for application

This commit is contained in:
Rebecca Law
2015-11-24 09:40:14 +00:00
parent e14780f7b5
commit b83d2f0d8a
6 changed files with 46 additions and 27 deletions

View File

@@ -1,12 +1,33 @@
import os
from flask import Flask
from config import configs
from flask._compat import string_types
def create_app():
def create_app(config_name):
application = Flask(__name__)
# application.config['NOTIFY_API_ENVIRONMENT'] = config_name
# application.config.from_object(configs[config_name])
application.config['NOTIFY_API_ENVIRONMENT'] = config_name
application.config.from_object(configs[config_name])
init_app(application)
from app.main import main as main_blueprint
application.register_blueprint(main_blueprint)
return application
def init_app(app):
for key, value in app.config.items():
if key in os.environ:
app.config[key] = convert_to_boolean(os.environ[key])
def convert_to_boolean(value):
if isinstance(value, string_types):
if value.lower() in ['t', 'true', 'on', 'yes', '1']:
return True
elif value.lower() in ['f', 'false', 'off', 'no', '0']:
return False
return value