Override isnull lookup for custom fields

This commit is contained in:
Jeremy Stretch 2025-08-21 09:23:26 -04:00
parent e01125a2ad
commit 004bb69aa1

View File

@ -600,6 +600,10 @@ class CustomField(CloningMixin, ExportTemplatesMixin, ChangeLoggedModel):
kwargs = { kwargs = {
'field_name': f'custom_field_data__{self.name}' 'field_name': f'custom_field_data__{self.name}'
} }
# Native numeric filters will use `isnull` by default for empty lookups, but
# JSON fields require `empty` (see bug #20012).
if lookup_expr == 'isnull':
lookup_expr = 'empty'
if lookup_expr is not None: if lookup_expr is not None:
kwargs['lookup_expr'] = lookup_expr kwargs['lookup_expr'] = lookup_expr