diff options
| author | John Parton <john.parton.iv@gmail.com> | 2024-09-05 21:53:11 -0500 |
|---|---|---|
| committer | Sarah Boyce <42296566+sarahboyce@users.noreply.github.com> | 2024-09-26 10:19:34 -0400 |
| commit | f22ff4561ada77be98ca4db3ce117caca897696e (patch) | |
| tree | 4561c1eea7a916ae1fadbb443a24a84affa5e263 | |
| parent | 5f0ed95e103d341e8839dedcdaaf551dde9522cf (diff) | |
Fixed #35734 -- Used JSONB_BUILD_OBJECT database function on PostgreSQL when using server-side bindings.
Regression in 81ccf92f154c6d9eac3e30bac0aa67574d0ace15.
| -rw-r--r-- | django/db/models/functions/comparison.py | 5 | ||||
| -rw-r--r-- | docs/releases/5.1.2.txt | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/django/db/models/functions/comparison.py b/django/db/models/functions/comparison.py index 6db81d6f46..d06f0a25a4 100644 --- a/django/db/models/functions/comparison.py +++ b/django/db/models/functions/comparison.py @@ -175,7 +175,10 @@ class JSONObject(Func): ) def as_postgresql(self, compiler, connection, **extra_context): - if not connection.features.is_postgresql_16: + if ( + not connection.features.is_postgresql_16 + or connection.features.uses_server_side_binding + ): copy = self.copy() copy.set_source_expressions( [ diff --git a/docs/releases/5.1.2.txt b/docs/releases/5.1.2.txt index 1cf3f9df09..6d2714df85 100644 --- a/docs/releases/5.1.2.txt +++ b/docs/releases/5.1.2.txt @@ -12,3 +12,6 @@ Bugfixes * Fixed a regression in Django 5.1 that caused a crash when using the PostgreSQL lookup :lookup:`trigram_similar` on output fields from ``Concat`` (:ticket:`35732`). + +* Fixed a regression in Django 5.1 that caused a crash of ``JSONObject()`` + when using server-side binding with PostgreSQL 16+ (:ticket:`35734`). |
