Fixed #4574 -- Removed multi-table inheritance auto created PK from serialize. (#4852)

This commit is contained in:
Mariusz Felisiak 2017-01-26 15:18:43 +01:00 committed by Tom Christie
parent 21166a3ab6
commit 1ecbeebbe5

View File

@ -76,7 +76,12 @@ def _get_forward_relationships(opts):
Returns an `OrderedDict` of field names to `RelationInfo`. Returns an `OrderedDict` of field names to `RelationInfo`.
""" """
forward_relations = OrderedDict() forward_relations = OrderedDict()
for field in [field for field in opts.fields if field.serialize and get_remote_field(field)]: for field in [
field for field in opts.fields
if field.serialize and get_remote_field(field) and not (field.primary_key and field.one_to_one)
# If the field is a OneToOneField and it's been marked as PK, then this
# is a multi-table inheritance auto created PK ('%_ptr').
]:
forward_relations[field.name] = RelationInfo( forward_relations[field.name] = RelationInfo(
model_field=field, model_field=field,
related_model=get_related_model(field), related_model=get_related_model(field),