Used model attribute instead of deprecated ForeignObjectRel.to.

This commit is contained in:
Mariusz Felisiak 2017-06-22 22:15:37 +02:00
parent 7a823ea474
commit b64ddf2e20
No known key found for this signature in database
GPG key ID: 2EF56372BA48CD1B
2 changed files with 5 additions and 5 deletions

View file

@ -182,8 +182,8 @@ class TranslationField(object):
self.related_query_name = lambda: loc_related_query_name
self.remote_field.related_name = build_localized_fieldname(current, self.language)
self.remote_field.field = self # Django 1.6
if hasattr(self.remote_field.to._meta, '_related_objects_cache'):
del self.remote_field.to._meta._related_objects_cache
if hasattr(self.remote_field.model._meta, '_related_objects_cache'):
del self.remote_field.model._meta._related_objects_cache
# Django 1.5 changed definition of __hash__ for fields to be fine with hash requirements.
# It spoiled our machinery, since TranslationField has the same creation_counter as its

View file

@ -529,11 +529,11 @@ class Translator(object):
# Set related field names on other model
if NEW_RELATED_API and not field.remote_field.is_hidden():
other_opts = self._get_options_for_model(field.remote_field.to)
other_opts = self._get_options_for_model(field.remote_field.model)
other_opts.related = True
other_opts.related_fields.append(field.related_query_name())
# Add manager in case of non-registered model
add_manager(field.remote_field.to)
add_manager(field.remote_field.model)
elif not NEW_RELATED_API and not field.rel.is_hidden():
other_opts = self._get_options_for_model(field.rel.to)
other_opts.related = True
@ -543,7 +543,7 @@ class Translator(object):
if isinstance(field, OneToOneField):
# Fix translated_field caching for SingleRelatedObjectDescriptor
sro_descriptor = (
getattr(field.remote_field.to, field.remote_field.get_accessor_name())
getattr(field.remote_field.model, field.remote_field.get_accessor_name())
if NEW_RELATED_API
else getattr(field.rel.to, field.related.get_accessor_name()))
patch_related_object_descriptor_caching(sro_descriptor)