def create_app(config_name=None):
logger.info('Creating flask app...')
app = Flask(__name__)
if config_name is None:
logger.info('Config name not supplied, searching environment')
config_name = os.environ.get('SDV_APP_SETTINGS', 'development')
logger.info('Config name set to: {}'.format(config_name))
logger.info('Initialising extensions')
app.config.from_object(config[config_name])
recaptcha.init_app(app=app)
bcrypt.init_app(app)
mail.init_app(app)
censor.init_app(app=app)
app.secret_key = app.config['SECRET_KEY']
app.jinja_env.trim_blocks = True
app.jinja_env.lstrip_blocks = True
app.wsgi_app = ProxyFix(app.wsgi_app)
if app.config['USE_SQLITE']:
logger.info('Application set to use SQLite')
app.database = app.config['DB_SQLITE']
app.sqlesc = '?'
def connect_db():
return sqlite3.connect(app.database)
else:
logger.info('Application set to use Postgres')
app.database = 'dbname=' + app.config['DB_NAME'] + ' user=' + app.config[
'DB_USER'] + ' password=' + app.config['DB_PASSWORD']
app.sqlesc = '%s'
return app
评论列表
文章目录