Package description here.
Project description
nr.utils.ponyorm
Utilities for Pony ORM.
Composable databases
Applications with plugin interfaces may choose to allow the use of a common
database, accessed via the same Pony ORM database object. The
nr.utils.ponyorm.appdb
provides classes to allow just that.
Example:
from nr.utils.ponyorm.appdb import AppDatabase, Optional, Required
appdb = AppDatabase(__name__)
class Person(appdb.Entity):
name = Required(str)
# etc. etc.
Then from the application startup logic:
from pony.orm import Database
db = Database()
for appdb in load_all_application_databases(): # ominous functions
appdb.bind_to(db)
db.generate_mapping(create_tables=True)
Common converters
Provides common converter implementations that are not built into Pony ORM.
All converters can be registered via AppDatabase.register_converter(converter_cls)
or with nr.utils.ponyorm.converters.register_converter(db, converter_cls)
.
Available converters are
EnumConverter
Utility functions
get_db(entity)
get_one(entity_cls, kwargs)
get_or_create(entity_cls, get, set=None)
upsert(entity_cls, get, set=None, mutate=True)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
nr.utils.ponyorm-0.0.1.tar.gz
(6.5 kB
view hashes)