Skip to main content

A PostgreSQL ORM

Project description

This is my effort to create an ORM which would take full advantage from PostgresSQL. It is currently under steady development.

Philosophy

  1. PostgresSQL is great. However portable ORM’s use it like SQLite. To use all features of Postgres we need to drop portability to weaker engines.

  2. Simple things should be simple, complicated things should be possible. The ORM should guess all the obvious things, but allow to override them.

  3. Where possible use pythonic EAFP strategy. If database seems to be not in sync with ORM try to migrate.

  4. The interaction with persistent objects should be as seamless and pythonic as possible

DONE

  1. Simple tables.

  2. Inheritance.

  3. Simplest one-to-many and many-to-one

  4. Many-to-many

  5. EAFP table creation

  6. Simplest identities

  7. Dependent and independent relations

  8. Some documentation

  9. Tree decorator for simple parent_id tree

  10. List-like relations

TODO

  1. Dict-like relations

  2. Advanced primary keys

  3. Concurrency control and conflict detection

  4. Advanced identities

  5. EAFP table migration

  6. Joined loading strategy

  7. Full documentation

  8. MPTT trees

Project details


Download files

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

Source Distributions

Elephantoplasty-0.0.3.zip (37.6 kB view details)

Uploaded Source

Elephantoplasty-0.0.3.tar.bz2 (18.9 kB view details)

Uploaded Source

File details

Details for the file Elephantoplasty-0.0.3.zip.

File metadata

File hashes

Hashes for Elephantoplasty-0.0.3.zip
Algorithm Hash digest
SHA256 966419cd3bb9cf2e7f77e8f32c5b7cacc49dbc620d1b92f42ccac02b53366b60
MD5 2ddd8554dd5e4c6a72e48b425e332031
BLAKE2b-256 c5a1eaed487d2b5f2db33dcff91dfd4a52fba600d575d261197b266a6b7accef

See more details on using hashes here.

File details

Details for the file Elephantoplasty-0.0.3.tar.bz2.

File metadata

File hashes

Hashes for Elephantoplasty-0.0.3.tar.bz2
Algorithm Hash digest
SHA256 e5c3858ee80991e7a04ca5f890d7effb4af2842009962e340b5712f17a9a8fab
MD5 09ea3f718844185865373ec0c312213e
BLAKE2b-256 38335f1636c73e3ded17e43c928f8090b5724002563c0b28f9078bb9cb9ae428

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page