Book Image

Flask Blueprints

By : Joel Perras
Book Image

Flask Blueprints

By: Joel Perras

Overview of this book

Table of Contents (14 chapters)

The application factory


We will use the application factory pattern again in this chapter; let's add our skeleton create_app method to the application/__init__.py module and include our Flask-SQLAlchemy database initialization as well:

from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
from flask.ext.bcrypt import Bcrypt


# Initialize the db extension, but without configuring
# it with an application instance.
db = SQLAlchemy()
flask_bcrypt = Bcrypt()


def create_app(config=None):
    app = Flask(__name__)

    if config is not None:
        app.config.from_object(config)

    db.init_app(app)
    flask_bcrypt.init_app(app)

    return app

Let's include our barebones run.py:

from application import create_app

app = create_app()
app.run()

This should give us the ability to run the application using the built-in Werkzeug application server via the following code:

$ python run.py