Skip to content

Commit

Permalink
Merge pull request #165 from fusionbox/django-1.9
Browse files Browse the repository at this point in the history
Django 1.9 Fixes
  • Loading branch information
vdboor committed Oct 20, 2015
2 parents 37d3f3e + 0c940bd commit 6a86a5c
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions polymorphic/polymorphic_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -173,10 +173,17 @@ def accessor_function(self):

subclasses_and_superclasses_accessors = self._get_inheritance_relation_fields_and_models()

from django.db.models.fields.related import SingleRelatedObjectDescriptor, ReverseSingleRelatedObjectDescriptor
try:
from django.db.models.fields.related import ReverseOneToOneDescriptor, ForwardManyToOneDescriptor
except ImportError:
# django < 1.9
from django.db.models.fields.related import (
SingleRelatedObjectDescriptor as ReverseOneToOneDescriptor,
ReverseSingleRelatedObjectDescriptor as ForwardManyToOneDescriptor,
)
for name, model in subclasses_and_superclasses_accessors.items():
orig_accessor = getattr(self.__class__, name, None)
if type(orig_accessor) in [SingleRelatedObjectDescriptor, ReverseSingleRelatedObjectDescriptor]:
if type(orig_accessor) in [ReverseOneToOneDescriptor, ForwardManyToOneDescriptor]:
#print >>sys.stderr, '---------- replacing', name, orig_accessor, '->', model
setattr(self.__class__, name, property(create_accessor_function_for_model(model, name)))

Expand Down

0 comments on commit 6a86a5c

Please sign in to comment.