Fixed #32182 -- Fixed crash of JSONField nested key transforms with subquery annotations on PostgreSQL.

This commit is contained in:
Hannes Ljungberg 2020-11-09 17:54:20 +01:00 committed by Mariusz Felisiak
parent dbb4a86fa7
commit 0773837e15
3 changed files with 17 additions and 1 deletions

View file

@ -408,6 +408,18 @@ class TestQuerying(TestCase):
[self.objs[4]],
)
def test_nested_key_transform_on_subquery(self):
self.assertSequenceEqual(
NullableJSONModel.objects.filter(value__d__0__isnull=False).annotate(
subquery_value=Subquery(
NullableJSONModel.objects.filter(pk=OuterRef('pk')).values('value')
),
key=KeyTransform('d', 'subquery_value'),
chain=KeyTransform('f', KeyTransform('1', 'key')),
).filter(chain='g'),
[self.objs[4]],
)
def test_expression_wrapper_key_transform(self):
self.assertSequenceEqual(
NullableJSONModel.objects.annotate(