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.2.zip (32.3 kB view details)

Uploaded Source

Elephantoplasty-0.0.2.tar.bz2 (16.0 kB view details)

Uploaded Source

File details

Details for the file Elephantoplasty-0.0.2.zip.

File metadata

File hashes

Hashes for Elephantoplasty-0.0.2.zip
Algorithm Hash digest
SHA256 019b16da1ad263b8133c4dfa9cdb3d0e40b645d39fddf55b577f12cfbc7cfd5d
MD5 6033773eb02e2f8ed54fe5d2d0afbadd
BLAKE2b-256 ebd4b39f827c92d745599c7210d5d36665d0631b7ad9db3e98cab7e9f528d771

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for Elephantoplasty-0.0.2.tar.bz2
Algorithm Hash digest
SHA256 86409a9adb4f7c6726019aafd6b576a548c7d9b495648d7683eb336048714a00
MD5 897839ca2d2b880f644fb323c40864b7
BLAKE2b-256 f6b8e52374128d6e5d5340be145532a316362cefcee76b9ff39a564ff501a61f

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