Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/coleifer/flask-peewee

flask integration for peewee, including admin, authentication, rest api and more
https://github.com/coleifer/flask-peewee

flask peewee python web-framework

Last synced: 3 days ago
JSON representation

flask integration for peewee, including admin, authentication, rest api and more

Awesome Lists containing this project

README

        

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.

.. image:: http://i.imgur.com/EtzdO.jpg

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:

http://127.0.0.1:5000/admin/

you can check out the REST api at the following url:

http://127.0.0.1:5000/api/message/