FYI, polymorphic associations to concrete mappings are totally  
unsupported in Hibernate,  an ORM that has a lot more maturity,  
widespread usage, and developers on it than this one...leaving me  
fairly uninspired to worry much about SA's similar limitations with  
polymorphic concrete mappings (even though SA has a better chance of  
supporting them, since we support mappings to unions).

http://www.hibernate.org/hib_docs/reference/en/html/ 
inheritance.html#inheritance-strategies

concrete mappings and A->B->C->D inheritance doesnt strike me as very  
high priority at this point....what im becoming interested in from  
hibernate at this point is its ability to issue multiple SELECTs for  
one query, for polymorphic loading as well as immediate relationship  
loading.   thats of more generalized usage than SA's reliance upon  
UNION and elaborate LEFT OUTER JOINs.


On Feb 21, 2007, at 3:02 PM, [EMAIL PROTECTED] wrote:

>
>> id use an association table with its own entity to make things
>> easy.
> hm, u mean... A.link references that table by single id, and the table
> contains the tuple (discriminator,id) ? But isn't this another sort
> of table-inheritance? looks like a join to me... not that i'm big
> specialist on joins.
> And how to automate the secondary loadby(discriminator,id)?
>
>> On Feb 21, 2007, at 10:05 AM, svilen wrote:
>>> g'day.
>>>
>>> How one can make such thing as a reference to concrete-inherited
>>> polymorphic mapper?
>>> e.g. if there are just two, A and B, B inherits A, both have full
>>> concrete tables. A has polymorphic mapper.
>>>
>>> If both tables have separate primary ids, they will overlap as
>>> values - table_A.id=1 for some A() and table_B.id=1 for some B()
>>> are both ok; hence, query(A).getby_id(1) would return 2 objects
>>> via the polymorphic union.
>>> in this case, the unique key within the polymunion seems to be
>>> the id+type_discriminator; where type_discriminator effectively
>>> means "this id is from that table".
>>>
>>> i see 2 possibilities here:
>>>
>>>  - use 2-field key: a tuple of discriminator(table_name) and
>>> id-in-that-table. How would one make references to those objects
>>> then? e.g. what would be the definition of Column( 'mylink_id',
>>> ...) be ? it becomes a link to multiple tables... Would the
>>> propertyLoaders support such multi-column key? or make some
>>> constructed single key instead?
>>>
>>>  - use one common sequence for filling both primary-keys of both
>>> tables. But this is limited to DBs which support sequences...
>>>
>>> Any help?
>>>
>>> ciao
>>> svil
>>
>>
>
> >


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to