Skip to content

Commit

Permalink
fix: Fixed .latest() ORM method with django 3.2
Browse files Browse the repository at this point in the history
Co-authored-by: Serg Tereshchenko <serg.partizan@gmail.com>

Refs #591
  • Loading branch information
MDziwny committed Apr 15, 2021
1 parent 8fd6278 commit eaf613b
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 3 deletions.
2 changes: 1 addition & 1 deletion modeltranslation/manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,7 @@ def _rewrite_f(self, q):
def _rewrite_filter_or_exclude(self, args, kwargs):
if not self._rewrite:
return args, kwargs
args = map(self._rewrite_q, args)
args = tuple(map(self._rewrite_q, args))
for key, val in list(kwargs.items()):
new_key = rewrite_lookup_key(self.model, key)
del kwargs[key]
Expand Down
7 changes: 7 additions & 0 deletions modeltranslation/tests/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -2650,6 +2650,13 @@ def test_order_by_meta(self):
self.assertEqual(titles_for_en, ('most', 'more_en', 'more_de', 'least'))
self.assertEqual(titles_for_de, ('most', 'more_de', 'more_en', 'least'))

def test_latest(self):
manager = models.ManagerTestModel.objects
instance_1 = manager.create(title='more_de', visits_en=1, visits_de=2)
instance_2 = manager.create(title='more_en', visits_en=2, visits_de=1)
latest_instance = manager.latest("id")
self.assertEqual(latest_instance, instance_2)

def assert_fallback(self, method, expected1, *args, **kwargs):
transform = kwargs.pop('transform', lambda x: x)
expected2 = kwargs.pop('expected_de', expected1)
Expand Down
9 changes: 7 additions & 2 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,10 @@ exclude = .tox,docs/modeltranslation/conf.py
[tox]
distribute = False
envlist =
py{36,37,38}-2.2,
py{36,37,38}-3.0,
py{36,37,38,39}-2.2,
py{36,37,38,39}-3.0,
py{36,37,38,39}-3.1,
py{36,37,38,39}-3.2,

[testenv]
downloadcache = {toxworkdir}/_download/
Expand All @@ -18,8 +20,11 @@ basepython =
py36: python3.6
py37: python3.7
py38: python3.8
py39: python3.9
deps =
2.2: Django==2.2.*
3.0: Django>=3.0a1,<3.1
3.1: Django>=3.1,<3.2
3.2: Django>=3.2,<4.0
Pillow
six

0 comments on commit eaf613b

Please sign in to comment.