Skip to main content

Extended SQLAlchemy declarative_base class

Project description

sqla_declarative
================

This package provides an extended Base class for your SQLAlchemy classes.
What this class proposes:
* the __tablename__ to create/use for the class is automatically defined by class.__name__.lower().
* it adds a property pk_id which returns the value of the primary key for the object.
* it attaches a query object to the class which is a shortcut to session.query(class).
* Function which returns all the DB entry in a HTML table
* Function to edit/add new entry as a HTML form


Example of usage::

import sqlalchemy as sa
from sqlalchemy.orm import (
scoped_session,
sessionmaker,
)
from zope.sqlalchemy import ZopeTransactionExtension
from sqla_declarative import extended_declarative_base

session = scoped_session(sessionmaker(extension=ZopeTransactionExtension()))
Base = extended_declarative_base(
session,
metadata=sa.MetaData('sqlite:///:memory:'))

class Test1(Base):
id = sa.Column(sa.Integer, primary_key=True)
name = sa.Column(sa.String(50))

bob = Test1(name='Bob')
session.add(bob)

# pk_id detects automatically the primary key and returns it value
bob.pk_id == 1
# Easy querying. For example:
Test1.query.one() == bob

# To see all the existing entry as HTML
Test1.view_all()

# To add/update a new entry as HTML
widget = Test1.edit_form()
widget.display()

Project details


Download files

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

Source Distribution

sqla_declarative-0.2.tar.gz (3.8 kB view details)

Uploaded Source

File details

Details for the file sqla_declarative-0.2.tar.gz.

File metadata

File hashes

Hashes for sqla_declarative-0.2.tar.gz
Algorithm Hash digest
SHA256 b72cd2c1f1a45cc86ddcc2913fbe926f06f024a2ccb85ae002e206a34c0df3f9
MD5 fff9e27504906467aa8106b5ec12ccdd
BLAKE2b-256 e6e5afc336f087443e21dea5e8209766a3acac21581002a129e22a237d1ed245

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