From 03aa9bc9b0555ef398a611bc8834d49ae0c08228 Mon Sep 17 00:00:00 2001 From: Oliver Date: Thu, 11 Nov 2021 22:39:31 +1100 Subject: [PATCH] Tweaks for settings admin views --- InvenTree/common/admin.py | 20 ++++++++++++++++++++ InvenTree/common/models.py | 2 ++ 2 files changed, 22 insertions(+) diff --git a/InvenTree/common/admin.py b/InvenTree/common/admin.py index 4df2499177..43048281b9 100644 --- a/InvenTree/common/admin.py +++ b/InvenTree/common/admin.py @@ -12,11 +12,31 @@ class SettingsAdmin(ImportExportModelAdmin): list_display = ('key', 'value') + def get_readonly_fields(self, request, obj=None): + """ + Prevent the 'key' field being edited once the setting is created + """ + + if obj: + return ['key',] + else: + return [] + class UserSettingsAdmin(ImportExportModelAdmin): list_display = ('key', 'value', 'user', ) + def get_readonly_fields(self, request, obj=None): + """ + Prevent the 'key' field being edited once the setting is created + """ + + if obj: + return ['key',] + else: + return [] + class NotificationEntryAdmin(admin.ModelAdmin): diff --git a/InvenTree/common/models.py b/InvenTree/common/models.py index e6c9923c88..1d36d1bd5a 100644 --- a/InvenTree/common/models.py +++ b/InvenTree/common/models.py @@ -63,6 +63,8 @@ class BaseInvenTreeSetting(models.Model): Enforce validation and clean before saving """ + self.key = str(self.key).upper() + self.clean() self.validate_unique()