[sqlalchemy] Re: rev 3449 breaks MapperExtension?

2007-09-07 Thread Michael Bayer

we've got plenty of MapperExtensions running.   i dont see how you  
are getting mapper.extension to be your actual mapper, its supposed  
to point to a container called ExtensionCarrier (unless, you are  
saying mapper.extension = _MapExt().  not supported, unless you want  
to provide a property-based patch for it).

On Sep 7, 2007, at 11:12 AM, [EMAIL PROTECTED] wrote:


 or has something in MapperExt protocol changed?

 File dbcook/usage/samanager.py, line 189, in query_BASE_instances
 return session.query( m.plain )
 File sqlalchemy/orm/session.py, line 638, in query
 q = self._query_cls(mapper_or_class, self, **kwargs)
 File sqlalchemy/orm/query.py, line 31, in __init__
 self._extension = self.mapper.extension.copy()
 AttributeError: '_MapExt' object has no attribute 'copy'

 i have very simple one, just for sanity checks:

 class _MapExt( sqlalchemy.orm.MapperExtension):
 def before_insert( self, mapper, connection, instance):
 assert (instance.__class__ is not mapper.class_,
   'load_only_object - no save: '
   + str( instance.__class__) + ':'+str(mapper)
 )
 before_update = before_delete = before_insert

 _mapext = _MapExt()

 and using that one on all mappers which should be readonly.

 svilen

 


--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sqlalchemy] Re: rev 3449 breaks MapperExtension?

2007-09-07 Thread sdobrev

On Friday 07 September 2007 20:25:50 Michael Bayer wrote:
 we've got plenty of MapperExtensions running.   i dont see how you
 are getting mapper.extension to be your actual mapper, its supposed
 to point to a container called ExtensionCarrier (
 unless, you are 
 saying mapper.extension = _MapExt().  
 not supported, unless you 
 want to provide a property-based patch for it).
yes, i am setting it this way... okay, if thats not the proper way 
anymore, i'll have a look.
Any other way to force a readonly mapper? 
its for mapping of (virtual) base classes that must not have 
instances.

 On Sep 7, 2007, at 11:12 AM, [EMAIL PROTECTED] wrote:
  or has something in MapperExt protocol changed?
 
  File dbcook/usage/samanager.py, line 189, in
  query_BASE_instances return session.query( m.plain )
  File sqlalchemy/orm/session.py, line 638, in query
  q = self._query_cls(mapper_or_class, self, **kwargs)
  File sqlalchemy/orm/query.py, line 31, in __init__
  self._extension = self.mapper.extension.copy()
  AttributeError: '_MapExt' object has no attribute 'copy'
 
  i have very simple one, just for sanity checks:
 
  class _MapExt( sqlalchemy.orm.MapperExtension):
  def before_insert( self, mapper, connection, instance):
  assert (instance.__class__ is not mapper.class_,
  'load_only_object - no save: '
  + str( instance.__class__) + ':'+str(mapper)
)
  before_update = before_delete = before_insert
 
  _mapext = _MapExt()
 
  and using that one on all mappers which should be readonly.
 
  svilen

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sqlalchemy] Re: rev 3449 breaks MapperExtension?

2007-09-07 Thread Michael Bayer


On Sep 7, 2007, at 3:06 PM, [EMAIL PROTECTED] wrote:


 On Friday 07 September 2007 20:25:50 Michael Bayer wrote:
 we've got plenty of MapperExtensions running.   i dont see how you
 are getting mapper.extension to be your actual mapper, its supposed
 to point to a container called ExtensionCarrier (
 unless, you are
 saying mapper.extension = _MapExt().
 not supported, unless you
 want to provide a property-based patch for it).
 yes, i am setting it this way... okay, if thats not the proper way
 anymore, i'll have a look.
 Any other way to force a readonly mapper?

a non-primary mapper is read only.



--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---