From 004bb69aa1478c925a8b037cb0c9d146bc0e7c86 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Thu, 21 Aug 2025 09:23:26 -0400 Subject: [PATCH] Override isnull lookup for custom fields --- netbox/extras/models/customfields.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/netbox/extras/models/customfields.py b/netbox/extras/models/customfields.py index cabaeada8..19d9e1ded 100644 --- a/netbox/extras/models/customfields.py +++ b/netbox/extras/models/customfields.py @@ -600,6 +600,10 @@ class CustomField(CloningMixin, ExportTemplatesMixin, ChangeLoggedModel): kwargs = { '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: kwargs['lookup_expr'] = lookup_expr