diff --git a/netbox/netbox/tables/tables.py b/netbox/netbox/tables/tables.py index f95263f6c2f..2d2c430aaff 100644 --- a/netbox/netbox/tables/tables.py +++ b/netbox/netbox/tables/tables.py @@ -2,6 +2,7 @@ from functools import cached_property import django_tables2 as tables +from django.conf import settings from django.contrib.auth.models import AnonymousUser from django.contrib.contenttypes.fields import GenericForeignKey from django.core.exceptions import FieldDoesNotExist @@ -64,6 +65,8 @@ def __init__(self, *args, user=None, **kwargs): selected_columns = None if user is not None and not isinstance(user, AnonymousUser): selected_columns = user.config.get(f"tables.{self.name}.columns") + elif isinstance(user, AnonymousUser) and hasattr(settings, 'DEFAULT_USER_PREFERENCES'): + selected_columns = settings.DEFAULT_USER_PREFERENCES.get('tables', {}).get(self.name, {}).get('columns') if not selected_columns: selected_columns = getattr(self.Meta, 'default_columns', self.Meta.fields)