Remove codes related to old versions of Django.

This commit is contained in:
Hasan Ramezani 2020-10-25 19:53:01 +01:00
parent 79cbc96055
commit 92ff6b927f
3 changed files with 9 additions and 23 deletions

View file

@ -1,6 +1,5 @@
import warnings
import django
from django.core.exceptions import ObjectDoesNotExist
from django.db import connection
from django.db import models
@ -96,18 +95,11 @@ class InheritanceQuerySetMixin:
return super()._chain(**kwargs)
def _clone(self, klass=None, setup=False, **kwargs):
if django.VERSION >= (2, 0):
qs = super()._clone()
for name in ['subclasses', '_annotated']:
if hasattr(self, name):
setattr(qs, name, getattr(self, name))
return qs
qs = super()._clone()
for name in ['subclasses', '_annotated']:
if hasattr(self, name):
kwargs[name] = getattr(self, name)
return super()._clone(**kwargs)
setattr(qs, name, getattr(self, name))
return qs
def annotate(self, *args, **kwargs):
qset = super().annotate(*args, **kwargs)

View file

@ -1,7 +1,6 @@
from copy import deepcopy
from functools import wraps
import django
from django.core.exceptions import FieldError
from django.db import models
from django.db.models.fields.files import FileDescriptor
@ -95,7 +94,7 @@ class FieldInstanceTracker:
@property
def deferred_fields(self):
return self.instance._deferred_fields if django.VERSION < (1, 10) else self.instance.get_deferred_fields()
return self.instance.get_deferred_fields()
def get_field_value(self, field):
return getattr(self.instance, self.field_map[field])
@ -213,12 +212,11 @@ class FieldTracker:
if self.fields is None:
self.fields = (field.attname for field in sender._meta.fields)
self.fields = set(self.fields)
if django.VERSION >= (1, 10):
for field_name in self.fields:
descriptor = getattr(sender, field_name)
wrapper_cls = DescriptorWrapper.cls_for_descriptor(descriptor)
wrapped_descriptor = wrapper_cls(field_name, descriptor, self.attname)
setattr(sender, field_name, wrapped_descriptor)
for field_name in self.fields:
descriptor = getattr(sender, field_name)
wrapper_cls = DescriptorWrapper.cls_for_descriptor(descriptor)
wrapped_descriptor = wrapper_cls(field_name, descriptor, self.attname)
setattr(sender, field_name, wrapped_descriptor)
self.field_map = self.get_field_map(sender)
models.signals.post_init.connect(self.initialize_tracker)
self.model_class = sender

View file

@ -1,6 +1,3 @@
from unittest import skipIf
import django
from django.test import TestCase
from django.db.models import Prefetch
@ -8,7 +5,6 @@ from tests.models import InheritanceManagerTestParent, InheritanceManagerTestChi
class InheritanceIterableTest(TestCase):
@skipIf(django.VERSION[:2] == (1, 10), "Django 1.10 expects ModelIterable not a subclass of it")
def test_prefetch(self):
qs = InheritanceManagerTestChild1.objects.all().prefetch_related(
Prefetch(