Commit f96e77ce authored by Serge S. Koval's avatar Serge S. Koval

Merge pull request #634 from Cosmius/master

Use SQLAlchemy-provided way to get primary_key, as a solution of the problem when a model is mapped against a SQLAlchemy Join object.
parents 09982090 7994b5d5
......@@ -36,16 +36,8 @@ def get_primary_key(model):
:param model:
Model class
"""
props = model._sa_class_manager.mapper.iterate_properties
pks = []
for p in props:
if hasattr(p, 'columns'):
for c in filter_foreign_columns(model.__table__, p.columns):
if c.primary_key:
pks.append(p.key)
break
mapper = model._sa_class_manager.mapper
pks = [mapper.get_property_by_column(c).key for c in mapper.primary_key]
if len(pks) == 1:
return pks[0]
elif len(pks) > 1:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment