Skip to main content

Peewee ORM integration for Flask framework

Project description

The Flask-PW – Peewee ORM intergration for Flask framework.

The plugin configures DB connection and provides some tools such as migrations and signals.


  • python 2.7+,3.4+


Flask-PW should be installed using pip:

pip install flask-pw



Flask-PW settings (default values):

# Connection URI
PEEWEE_DATABASE_URI = 'sqlite:///peewee.sqlite'

# Connection params (for example for pgsql: { encoding: 'utf-8' })

# Path to directory which contains migrations
PEEWEE_MIGRATIONS = 'migrations'

# Path to module which contains you applications' Models
# Needed by automatic migrations

# Models which should be ignored in migrations

# Base models class
# Use `db.Model` as your models' base class for automatically DB binding
PEEWEE_MODELS_CLASS = <flask_pw.Model>

# Don't connect to db when request starts and close when it ends automatically


import peewee as pw
from flask import Flask

from flask_pw import Peewee

app = Flask(__name__)

app.config['PEEWEE_DATABASE_URI'] = 'sqlite:///:memory:'

db = Peewee(app)

class User(db.Model):

    name = pw.CharField(255)
    title = pw.CharField(127, null=True)
    active = pw.BooleanField(default=True)
    rating = pw.IntegerField(default=0)

def update(user, created=False):
    if created:
        # Do something


If you use Flask-Script just add ‘db’ command to your manager:

manager = Manager(create_app)
manager.add_command('db', db.manager)

And use db create, db migrate and db rollback commands.

Bug tracker

If you have any suggestions, bug reports or annoyances please report them to the issue tracker at


Development of The Flask-pw happens at:


Licensed under a MIT license (See LICENSE)

If you wish to express your appreciation for the project, you are welcome to send a postcard to:

Kirill Klenov
pos. Severny 8-3
MO, Istra, 143500

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
Flask_PW-0.0.3-py2.py3-none-any.whl (7.4 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Apr 6, 2016
Flask-PW-0.0.3.tar.gz (6.2 kB) Copy SHA256 hash SHA256 Source None Apr 6, 2016

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page