mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-14 09:51:22 -06:00
Add default user preferences tables testing in BaseTable
This commit is contained in:
parent
5514df9dee
commit
22af6dd05f
@ -2,6 +2,7 @@ from copy import deepcopy
|
|||||||
from functools import cached_property
|
from functools import cached_property
|
||||||
|
|
||||||
import django_tables2 as tables
|
import django_tables2 as tables
|
||||||
|
from django.conf import settings
|
||||||
from django.contrib.auth.models import AnonymousUser
|
from django.contrib.auth.models import AnonymousUser
|
||||||
from django.contrib.contenttypes.fields import GenericForeignKey
|
from django.contrib.contenttypes.fields import GenericForeignKey
|
||||||
from django.core.exceptions import FieldDoesNotExist
|
from django.core.exceptions import FieldDoesNotExist
|
||||||
@ -13,6 +14,7 @@ from django.utils.safestring import mark_safe
|
|||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext_lazy as _
|
||||||
from django_tables2.data import TableQuerysetData
|
from django_tables2.data import TableQuerysetData
|
||||||
|
|
||||||
|
|
||||||
from core.models import ObjectType
|
from core.models import ObjectType
|
||||||
from extras.choices import *
|
from extras.choices import *
|
||||||
from extras.models import CustomField, CustomLink
|
from extras.models import CustomField, CustomLink
|
||||||
@ -64,6 +66,11 @@ class BaseTable(tables.Table):
|
|||||||
selected_columns = None
|
selected_columns = None
|
||||||
if user is not None and not isinstance(user, AnonymousUser):
|
if user is not None and not isinstance(user, AnonymousUser):
|
||||||
selected_columns = user.config.get(f"tables.{self.name}.columns")
|
selected_columns = user.config.get(f"tables.{self.name}.columns")
|
||||||
|
elif isinstance(user, AnonymousUser):
|
||||||
|
default_user_preferences = settings.DEFAULT_USER_PREFERENCES
|
||||||
|
default_table = default_user_preferences.get('tables', {}).get(self.name, {}).get('columns', {})
|
||||||
|
if default_table != {}:
|
||||||
|
selected_columns = default_table
|
||||||
if not selected_columns:
|
if not selected_columns:
|
||||||
selected_columns = getattr(self.Meta, 'default_columns', self.Meta.fields)
|
selected_columns = getattr(self.Meta, 'default_columns', self.Meta.fields)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user