Skip to main content

Data layer for Eve powered by peewee.

Project description

|Build Status|

A WIP data layer for Eve using peewee

Currently peewee creates tables based on settings.py DOMAIN declarations during start-up and basic Eve CRUD methods work.

Instuctions

  • python setup.py install or pip install eve-peewee
  • define DATABASE_URI in settings.py (see examples)
  • Eve(data=EvePeewee).run()

Tested

  • postgres 9.x, sqlite3
  • python 2.7, 3.5
  • basic eve functionality (filtering, sorting, pagination, timestamps, etag/if-match, soft delete)
  • 1:m data relationships

Untested/TBD

  • mysql
  • custom validator
  • constraints (unique)
  • m:m data relationships (atm creates link tables but likely fails to query for embedding)
  • versioning fields

Notable caveats

  • peewee doesn’t do auto-migration (if you change domain models, drop the tables to get them recreated or apply changes in db manually)
  • peewee specific field properties can be defined in DOMAIN schema (requires “transparent_schema_rules”), e.g. '_peewee': { 'primary_key': True }
  • not all possible error cases are captured to json/xml document, default 500 response may happen
  • objectid and media types are unsupported (list and dict types are saved as jsonb)
  • many of the mongo centric field properties of eve (anyof, allof etc) are silently ignored

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
eve_peewee-0.0.6-py2.py3-none-any.whl (8.7 kB) Copy SHA256 hash SHA256 Wheel 2.7 Apr 26, 2016
eve-peewee-0.0.6.tar.gz (7.0 kB) Copy SHA256 hash SHA256 Source None Apr 26, 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