mirror of
https://github.com/Hopiu/django-modeltranslation.git
synced 2026-05-10 06:14:43 +00:00
chore: Remove code for old django versions
This commit is contained in:
parent
9d9a2ab8b0
commit
d0b8e707ec
5 changed files with 12 additions and 65 deletions
|
|
@ -1,12 +1,4 @@
|
|||
from modeltranslation._typing import monkeypatch
|
||||
|
||||
try:
|
||||
from django import VERSION as _django_version
|
||||
|
||||
if _django_version < (3, 2):
|
||||
default_app_config = "modeltranslation.apps.ModeltranslationConfig"
|
||||
except ImportError:
|
||||
pass
|
||||
|
||||
# monkeypatch generic classes at runtime
|
||||
monkeypatch()
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import copy
|
|||
from typing import Any, cast
|
||||
from collections.abc import Sequence
|
||||
|
||||
from django import VERSION, forms
|
||||
from django import forms
|
||||
from django.core.exceptions import ImproperlyConfigured
|
||||
from django.db.models import Model, fields
|
||||
from django.utils.encoding import force_str
|
||||
|
|
@ -49,8 +49,6 @@ SUPPORTED_FIELDS = (
|
|||
fields.related.ManyToManyField,
|
||||
)
|
||||
|
||||
NEW_RELATED_API = VERSION >= (1, 9)
|
||||
|
||||
|
||||
class NONE:
|
||||
"""
|
||||
|
|
@ -220,24 +218,7 @@ class TranslationField:
|
|||
if hasattr(self.remote_field.model._meta, "_related_objects_cache"):
|
||||
del self.remote_field.model._meta._related_objects_cache
|
||||
|
||||
# ForeignKey support - rewrite related_name
|
||||
elif not NEW_RELATED_API and self.rel and self.related and not self.rel.is_hidden():
|
||||
current = self.related.get_accessor_name()
|
||||
self.rel = copy.copy(self.rel) # Since fields cannot share the same rel object.
|
||||
# self.related doesn't need to be copied, as it will be recreated in
|
||||
# ``RelatedField.do_related_class``
|
||||
|
||||
if self.rel.related_name is None:
|
||||
# For implicit related_name use different query field name
|
||||
loc_related_query_name = build_localized_fieldname(
|
||||
self.related_query_name(), self.language
|
||||
)
|
||||
self.related_query_name = lambda: loc_related_query_name
|
||||
self.rel.related_name = build_localized_fieldname(current, self.language)
|
||||
self.rel.field = self
|
||||
if hasattr(self.rel.to._meta, "_related_objects_cache"):
|
||||
del self.rel.to._meta._related_objects_cache
|
||||
elif NEW_RELATED_API and self.remote_field and not self.remote_field.is_hidden():
|
||||
elif self.remote_field and not self.remote_field.is_hidden():
|
||||
current = self.remote_field.get_accessor_name()
|
||||
# Since fields cannot share the same rel object:
|
||||
self.remote_field = copy.copy(self.remote_field)
|
||||
|
|
|
|||
|
|
@ -14,7 +14,6 @@ from __future__ import annotations
|
|||
from typing import Any, cast
|
||||
from collections.abc import Iterator
|
||||
|
||||
from django import VERSION
|
||||
from django.core.management.base import BaseCommand, CommandParser
|
||||
from django.core.management.color import no_style
|
||||
from django.db import connection
|
||||
|
|
@ -59,11 +58,9 @@ class Command(BaseCommand):
|
|||
" languages or undeclared fields."
|
||||
)
|
||||
|
||||
if VERSION < (1, 8):
|
||||
from optparse import make_option
|
||||
|
||||
option_list = BaseCommand.option_list + ( # type: ignore
|
||||
make_option(
|
||||
def add_arguments(self, parser: CommandParser) -> None:
|
||||
(
|
||||
parser.add_argument(
|
||||
"--noinput",
|
||||
action="store_false",
|
||||
dest="interactive",
|
||||
|
|
@ -71,18 +68,6 @@ class Command(BaseCommand):
|
|||
help="Do NOT prompt the user for input of any kind.",
|
||||
),
|
||||
)
|
||||
else:
|
||||
|
||||
def add_arguments(self, parser: CommandParser) -> None:
|
||||
(
|
||||
parser.add_argument(
|
||||
"--noinput",
|
||||
action="store_false",
|
||||
dest="interactive",
|
||||
default=True,
|
||||
help="Do NOT prompt the user for input of any kind.",
|
||||
),
|
||||
)
|
||||
|
||||
def handle(self, *args: Any, **options: Any) -> None:
|
||||
"""
|
||||
|
|
|
|||
|
|
@ -12,7 +12,6 @@ from functools import reduce
|
|||
from typing import Any, Literal, TypeVar, cast, overload
|
||||
from collections.abc import Container, Iterator, Sequence, Iterable
|
||||
|
||||
from django import VERSION
|
||||
from django.contrib.admin.utils import get_model_from_relation
|
||||
from django.core.exceptions import FieldDoesNotExist
|
||||
from django.db import models
|
||||
|
|
@ -328,17 +327,9 @@ class MultilingualQuerySet(QuerySet[_T]):
|
|||
kwargs[new_key] = self._rewrite_f(val)
|
||||
return args, kwargs
|
||||
|
||||
if VERSION >= (3, 2):
|
||||
|
||||
def _filter_or_exclude(self, negate: bool, args: Any, kwargs: Any) -> Self:
|
||||
args, kwargs = self._rewrite_filter_or_exclude(args, kwargs)
|
||||
return super()._filter_or_exclude(negate, args, kwargs)
|
||||
|
||||
else:
|
||||
|
||||
def _filter_or_exclude(self, negate: bool, *args: Any, **kwargs: Any) -> Self:
|
||||
args, kwargs = self._rewrite_filter_or_exclude(args, kwargs)
|
||||
return super()._filter_or_exclude(negate, *args, **kwargs)
|
||||
def _filter_or_exclude(self, negate: bool, args: Any, kwargs: Any) -> Self:
|
||||
args, kwargs = self._rewrite_filter_or_exclude(args, kwargs)
|
||||
return super()._filter_or_exclude(negate, args, kwargs)
|
||||
|
||||
def _get_original_fields(self) -> list[str]:
|
||||
source = (
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ from functools import partial
|
|||
from typing import Any, Callable, ClassVar, cast
|
||||
from collections.abc import Collection, Iterable, Sequence
|
||||
|
||||
import django
|
||||
from django.core.exceptions import ImproperlyConfigured
|
||||
from django.db.models import (
|
||||
Field,
|
||||
|
|
@ -460,11 +459,10 @@ def patch_related_object_descriptor_caching(ro_descriptor):
|
|||
class NewSingleObjectDescriptor(LanguageCacheSingleObjectDescriptor, ro_descriptor.__class__):
|
||||
pass
|
||||
|
||||
if django.VERSION[0] >= 2:
|
||||
ro_descriptor.related.get_cache_name = partial(
|
||||
NewSingleObjectDescriptor.get_cache_name,
|
||||
ro_descriptor,
|
||||
)
|
||||
ro_descriptor.related.get_cache_name = partial(
|
||||
NewSingleObjectDescriptor.get_cache_name,
|
||||
ro_descriptor,
|
||||
)
|
||||
|
||||
ro_descriptor.accessor = ro_descriptor.related.get_accessor_name()
|
||||
ro_descriptor.__class__ = NewSingleObjectDescriptor
|
||||
|
|
|
|||
Loading…
Reference in a new issue