This package is in maintenance-only mode!
I'm sorry to announce that flask-peewee will now be in maintenance-only mode. This decision is motivated by a number of factors:
- Flask-Admin provides a superior admin interface and has support for peewee models.
- Flask-Security and Flask-Login both provide authentication functionality, and work well with Peewee.
- Most importantly, though, I do not find myself wanting to work on flask-peewee.
I plan on rewriting the Database
and REST API
portions of flask-peewee and repackaging them as a new library, but flask-peewee as it stands currently will be in maintenance-only mode.
flask-peewee
provides a layer of integration between the flask web framework and the peewee orm.
batteries included:
- admin interface
- authentication
- rest api
requirements:
- flask
- peewee
- wtforms
- wtf-peewee
- python 2.5 or greater
check out the documentation.
admin interface
influenced heavily by the django admin, provides easy create/edit/delete functionality for your project's models.
rest api
influenced by tastypie, provides a way to expose a RESTful interface for your project's models.
curl localhost:5000/api/user/ { "meta": { "model": "user", "next": "", "page": 1, "previous": "" }, "objects": [ { "username": "admin", "admin": true, "email": "", "join_date": "2011-09-16 18:34:49", "active": true, "id": 1 }, { "username": "coleifer", "admin": false, "email": "[email protected]", "join_date": "2011-09-16 18:35:56", "active": true, "id": 2 } ] }
installing
I recommend installing in a virtualenv. to get started:
# create a new virtualenv virtualenv --no-site-packages project cd project/ source bin/activate # install this project (will install dependencies as well) pip install flask-peewee
example app
the project ships with an example app, which is a silly twitter clone. to
start the example app, cd
into the "example" directory and execute
the run_example.py
script:
cd example/ python run_example.py
if you would like to test out the admin area, log in as "admin/admin" and navigate to:
you can check out the REST api at the following url: