On Oct 17, 2011, at 5:40 AM, Robert Forkel wrote:
> Hi all,
> Using sqlalchemy 0.7.2 I created a couple of mixin classes (say Mixin)
> to share columns declarations between model classes (say A and B).
> Sometimes I have to create instances of type B initialized with the
> values of an existing object of type A for the columns declared by
> Mixin. I'd like to make this code extensible with respect to the
> columns declared in Mixin, i.e. adding new columns to Mixin should
> require updating this code.
> Is there a way to find the names of column properties contributed by a
> Mixin?
> (I tried with checking Mixin.__dict__ for items of type
> sqlalchemy.schema.Column, but this doesn't give foreign keys declared
> via @declared_attr)
> best regards
> robert
the mixin is pretty much what you see there, a Python class with some
attributes. @declared_attr doesn't do anything except allow the function to
act like an attribute at the class level (it's just one line), and also is a
"marker" object recognized by Declarative. So if you wanted to see what a
certain attribute had, you'd call it, that is, instead of looking in __dict__,
you'd say:
for attr in dir(MyMixin):
value = getattr(MyMixin, attr)
# inspect "value"
--
You received this message because you are subscribed to the Google Groups
"sqlalchemy" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sqlalchemy?hl=en.