mirror of
https://github.com/sqlalchemy/sqlalchemy.git
synced 2026-05-27 19:15:05 -04:00
24 lines
1.1 KiB
Python
24 lines
1.1 KiB
Python
"""
|
|
Illustrates various methods of associating multiple types of
|
|
parents with a particular child object.
|
|
|
|
The examples all use the declarative extension along with
|
|
declarative mixins. Each one presents the identical use
|
|
case at the end - two classes, ``Customer`` and ``Supplier``, both
|
|
subclassing the ``HasAddresses`` mixin, which ensures that the
|
|
parent class is provided with an ``addresses`` collection
|
|
which contains ``Address`` objects.
|
|
|
|
The configurations include:
|
|
|
|
* ``table_per_related.py`` - illustrates a distinct table per related collection.
|
|
* ``table_per_association.py`` - illustrates a shared collection table, using a
|
|
table per association.
|
|
* ``discriminator_on_association.py`` - shared collection table and shared
|
|
association table, including a discriminator column.
|
|
|
|
The ``discriminator_on_association.py`` script in particular is a modernized
|
|
version of the "polymorphic associations" example present in older versions of
|
|
SQLAlchemy, originally from the blog post at http://techspot.zzzeek.org/2007/05/29/polymorphic-associations-with-sqlalchemy/.
|
|
|
|
""" |