diff options
Diffstat (limited to 'django/contrib/postgres/fields/array.py')
| -rw-r--r-- | django/contrib/postgres/fields/array.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/django/contrib/postgres/fields/array.py b/django/contrib/postgres/fields/array.py index 18050e9a56..d418e1dc1a 100644 --- a/django/contrib/postgres/fields/array.py +++ b/django/contrib/postgres/fields/array.py @@ -6,6 +6,7 @@ from django.contrib.postgres.validators import ArrayMaxLengthValidator from django.core import checks, exceptions from django.db.models import Field, IntegerField, Transform from django.db.models.lookups import Exact, In +from django.utils.inspect import func_supports_parameter from django.utils.translation import gettext_lazy as _ from ..utils import prefix_validation_error @@ -103,11 +104,13 @@ class ArrayField(Field): value = [self.base_field.to_python(val) for val in vals] return value - def _from_db_value(self, value, expression, connection, context): + def _from_db_value(self, value, expression, connection): if value is None: return value return [ - self.base_field.from_db_value(item, expression, connection, context) + self.base_field.from_db_value(item, expression, connection, {}) + if func_supports_parameter(self.base_field.from_db_value, 'context') # RemovedInDjango30Warning + else self.base_field.from_db_value(item, expression, connection) for item in value ] |
