""" if not sqlobject: raise UnsupportedHandler("sqlobject module not found") if obj is None: return False from sqlobject.declarative import DeclarativeMeta if type(obj) is DeclarativeMeta and obj.__name__ not in ( 'SQLObject', 'sqlmeta', 'ManyToMany', 'OneToMany'): return True def sets(self): """yields FixtureSet for each row in SQLObject.""" for row in self.rs: yield SQLObjectFixtureSet(row, self.obj, connection=self.connection) register_handler(SQLObjectHandler) class SQLObjectFixtureSet(FixtureSet): """a fixture set for a SQLObject row.""" def __init__(self, data, model, connection=None): FixtureSet.__init__(self, data) self.connection = connection self.model = model self.meta = model.sqlmeta self.foreign_key_class = {} self.primary_key = None self.understand_columns() # NOTE: primary keys are not included in columnList
if not SQLAlchemyHandler.recognizes(object_path, obj=obj): return False if not SQLAlchemyMappedClassHandler.recognizes(object_path, obj=obj): return False # OK, so it is a mapped class if (hasattr(obj, 'query') and getattr(obj.query, '__module__', '').startswith('sqlalchemy')): # sort of hoky but 0.5 proxies query and # query.mapper so we can't check types return True return False register_handler(SQLAlchemySessionMapperHandler) class SQLAlchemyTableHandler(SQLAlchemyHandler): class RecordSetAdapter(SQLAlchemyHandler.RecordSetAdapter): def __init__(self, obj): self.table = obj self.columns = self.table.columns keys = [k for k in self.table.primary_key] if len(keys) != 1: raise ValueError("unsupported primary key type %s" % keys) self.id_attr = keys[0].key def primary_key_from_instance(self, data): key_str = [] for k in self.table.primary_key: key_str.append(str(getattr(data, k.key)))
""" if not sqlobject: raise UnsupportedHandler("sqlobject module not found") if obj is None: return False from sqlobject.declarative import DeclarativeMeta if type(obj) is DeclarativeMeta and obj.__name__ not in ( 'SQLObject', 'sqlmeta', 'ManyToMany', 'OneToMany'): return True def sets(self): """yields FixtureSet for each row in SQLObject.""" for row in self.rs: yield SQLObjectFixtureSet(row, self.obj, connection=self.connection) register_handler(SQLObjectHandler) class SQLObjectFixtureSet(FixtureSet): """a fixture set for a SQLObject row.""" def __init__(self, data, model, connection=None): FixtureSet.__init__(self, data) self.connection = connection self.model = model self.meta = model.sqlmeta self.foreign_key_class = {} self.primary_key = None self.understand_columns() # NOTE: primary keys are not included in columnList
return False if not SQLAlchemyMappedClassHandler.recognizes(object_path, obj=obj): return False # OK, so it is a mapped class if (hasattr(obj, 'query') and getattr(obj.query, '__module__', '').startswith('sqlalchemy')): # sort of hoky but 0.5 proxies query and # query.mapper so we can't check types return True return False register_handler(SQLAlchemySessionMapperHandler) class SQLAlchemyTableHandler(SQLAlchemyHandler): class RecordSetAdapter(SQLAlchemyHandler.RecordSetAdapter): def __init__(self, obj): self.table = obj self.columns = self.table.columns keys = [k for k in self.table.primary_key] if len(keys) != 1: raise ValueError("unsupported primary key type %s" % keys) self.id_attr = keys[0].key def primary_key_from_instance(self, data): key_str = [] for k in self.table.primary_key:
if type(mapper) == Mapper: return True if hasattr(obj, 'mapper'): # i.e. assign_mapper ... if isa_mapper(obj.mapper): return True if hasattr(obj, '_mapper'): # i.e. sqlsoup ?? if isa_mapper(obj._mapper): return True return False register_handler(SQLAlchemyAssignedMapperHandler) class SQLAlchemyTableHandler(SQLAlchemyHandler): class RecordSetAdapter(SQLAlchemyHandler.RecordSetAdapter): def __init__(self, obj): self.table = obj self.columns = self.table.columns keys = [k for k in self.table.primary_key] if len(keys) != 1: raise ValueError("unsupported primary key type %s" % keys) self.id_attr = keys[0].key def primary_key_from_instance(self, data): key_str = [] for k in self.table.primary_key: