“version” is part of the primary key and is FK’ed to the superclass table, so 
the warning isn’t generated for that one.

it wouldn’t be appropriate for a datetime “changed” to have a foreign key.  IMO 
it only needs to be on the base table.




> On Oct 21, 2014, at 2:35 PM, JPLaverdure <jp.laverd...@gmail.com> wrote:
> 
> Hi Michael,
> 
> I quite agree that child entities don't need their own copy of the "changed" 
> attribute, but this is also the way that the "version" attribute is handled.
> (ie: both parent and child entities have their own copy of "version")
> Is there any way we can fix the both of them ?
> 
> As for the option to remove the "changed" attribute... Well, I'm the one who 
> suggested its addition and submitted the pull request :)
> 
> Thanks,
> 
> JP
> 
> On Friday, 17 October 2014 16:05:15 UTC-4, Michael Bayer wrote:
> 
>> On Oct 17, 2014, at 3:50 PM, JPLaverdure <jp.lav...@gmail.com <javascript:>> 
>> wrote:
>> 
>> Hi Michael,
>> 
>> My bad, they do indeed only show up on mapping... which takes place when my 
>> pyramid app instantiates. Sorry for the confusion :)
>> Still, they could be unnerving for someone deploying the app. Any way to not 
>> have these show up ?
>> I did look into version_meta.py and tried to make some tweaks when I saw 
>> anything having to do with the version atribute.. But to no avail.
>> 
>> Your help is greatly appreciated !
> 
> it’s not clear why a class that inherits from another needs a separate 
> “changed” column in any case.     The recipe indicates on line 68 this column 
> is optional so I’d remove it, or just make it conditional if “super_mapper” 
> is not present to have it only on the base table.   or maybe just map it 
> differently, or not at all, down where it calls mapper():
> 
>     m = mapper(
>             versioned_cls,
>             table,
>             inherits=super_history_mapper,
>             polymorphic_on=polymorphic_on,
>             polymorphic_identity=local_mapper.polymorphic_identity,
>             exclude_columns=[‘changed’]
>             )
> 
> 
> 
> 
> 
> 
>> 
>> JP   
>> 
>> On Friday, 17 October 2014 14:52:22 UTC-4, JPLaverdure wrote:
>> Hello,
>> 
>> It seems a number of SAWarnings are being thrown whenever I instantiate 
>> Versioned objects which make use of inheritance:
>> 
>> SAWarning: Implicitly combining column container_history.changed with column 
>> barcoded_container_history.changed under attribute 'changed'.  
>> Please configure one or more attributes for these same-named columns 
>> explicitly.
>> prop = self._property_from_column(key, prop)
>> 
>> Unfortunately, since these objects are instantiated "auto-magically" by the 
>> Versioned mixin class, I can't see a way to make these go away or address 
>> the issue.
>> I tried looking into the history_meta.py source and cannot understand why 
>> this same warning is not being thrown for the "version" attribute.
>> 
>> Anyone has an idea ?
>> 
>> Thanks !
>> 
>> JP
>> 
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "sqlalchemy" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to sqlalchemy+...@googlegroups.com <javascript:>.
>> To post to this group, send email to sqlal...@googlegroups.com <javascript:>.
>> Visit this group at http://groups.google.com/group/sqlalchemy 
>> <http://groups.google.com/group/sqlalchemy>.
>> For more options, visit https://groups.google.com/d/optout 
>> <https://groups.google.com/d/optout>.
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sqlalchemy+unsubscr...@googlegroups.com 
> <mailto:sqlalchemy+unsubscr...@googlegroups.com>.
> To post to this group, send email to sqlalchemy@googlegroups.com 
> <mailto:sqlalchemy@googlegroups.com>.
> Visit this group at http://groups.google.com/group/sqlalchemy 
> <http://groups.google.com/group/sqlalchemy>.
> For more options, visit https://groups.google.com/d/optout 
> <https://groups.google.com/d/optout>.

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at http://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to