, isinstance(prop, sqlalchemy.orm.ColumnProperty). , ( ), , . , . " " isinstance(prop, RelationProperty) and prop.secondary. :
from sqlalchemy.orm import object_mapper, ColumnProperty, RelationProperty
newobj = type(src)()
for prop in object_mapper(src).iterate_properties:
if (isinstance(prop, ColumnProperty) or
isinstance(prop, RelationProperty) and prop.secondary):
setattr(newobj, prop.key, getattr(src, prop.key))
, SQLAlchemy , , , ( ) , , , , ( ).
source
share