def __init__( self, object ): self.klass = named( object.__class__ ) primary_key = getPrimaryKey( object ) if len( primary_key ) == 1: self.primary_key = primary_key[0] else: self.primary_key = primary_key
def __init__(self, object): self.klass = named(object.__class__) primary_key = getPrimaryKey(object) if len(primary_key) == 1: self.primary_key = primary_key[0] else: self.primary_key = primary_key
def defineMapping(self, annotated_table, **kw): table_mapper = mapper(annotated_table.domain_class, annotated_table.table, **kw) self.mappers[named(annotated_table.domain_class)] = table_mapper annotated_table.domain_class.mapper = table_mapper self.table_classes[ annotated_table.table.name] = annotated_table.domain_class
def setUpViewlet(self, domain_model): model_schema = list(interface.implementedBy(domain_model))[0] mapper = orm.class_mapper(domain_model) domain_annotation = model.queryModelDescriptor(model_schema) grouped = util.OrderedDict() for property in mapper.iterate_properties: if not self.checkProperty(property, model_schema, domain_annotation): continue property_name = property.key descriptor = domain_annotation.get(property_name) if descriptor.group in grouped: grouped[descriptor.group].append(property_name) else: grouped[descriptor.group] = [property_name] for group in grouped: viewlet_name = self.viewlet_name_template % (domain_model.__name__, group) viewlet_name.replace('_', '') if getattr(content, viewlet_name, None): continue inverse_model = mapper.get_property( grouped[group][0]).mapper.class_ d = dict(group_name=group, properties=grouped[group], domain_model=inverse_model) viewlet_class = type(viewlet_name, (self.base_viewlet, ), d) zcml_snippet = self.zcml_template % ( "%s.%s" % (domain_model.__name__, group), named(model_schema), viewlet_name) setattr(content, viewlet_name, viewlet_class)
def setUpViewlet( self, domain_model ): model_schema = list( interface.implementedBy(domain_model) )[0] mapper = orm.class_mapper( domain_model ) domain_annotation = model.queryModelDescriptor( model_schema ) grouped = util.OrderedDict() for property in mapper.iterate_properties: if not self.checkProperty( property, model_schema, domain_annotation ): continue property_name = property.key descriptor = domain_annotation.get( property_name ) if descriptor.group in grouped: grouped[ descriptor.group ].append( property_name ) else: grouped[ descriptor.group ] = [ property_name ] for group in grouped: viewlet_name = self.viewlet_name_template % ( domain_model.__name__, group ) viewlet_name.replace('_', '') if getattr( content, viewlet_name, None): continue inverse_model = mapper.get_property( grouped[group][0] ).mapper.class_ d = dict( group_name = group, properties=grouped[group], domain_model=inverse_model) viewlet_class = type( viewlet_name, (self.base_viewlet,), d ) zcml_snippet = self.zcml_template%( "%s.%s"%(domain_model.__name__, group), named( model_schema ), viewlet_name ) setattr( content, viewlet_name, viewlet_class )
def defineMapping( self, annotated_table, **kw ): table_mapper = mapper( annotated_table.domain_class, annotated_table.table, **kw) self.mappers[ named( annotated_table.domain_class ) ] = table_mapper annotated_table.domain_class.mapper = table_mapper self.table_classes[ annotated_table.table.name ] = annotated_table.domain_class
def addMapping( self, mapping ): self.klasses[ named( mapping.class_ ) ] = mapping.class_ self.mappers[ named( mapping.class_ ) ] = mapping
def loadMapping( self, domain_class, domain_table, **kw ): self.klasses[ named( domain_class ) ] = domain_class self.tables[ named( domain_table ) ] = domain_table mapper = mapper( domain_class, domain_table, **kw) self.mappers[ named( domain_class ) ] = mapper return mapper
def addMapping(self, mapping): self.klasses[named(mapping.class_)] = mapping.class_ self.mappers[named(mapping.class_)] = mapping
def loadMapping(self, domain_class, domain_table, **kw): self.klasses[named(domain_class)] = domain_class self.tables[named(domain_table)] = domain_table mapper = mapper(domain_class, domain_table, **kw) self.mappers[named(domain_class)] = mapper return mapper