Better migration of update checking settings, offer reload, strip backend_setting from db

This commit is contained in:
Michael Shamoon
2022-09-30 14:03:59 -07:00
parent 9e2430da46
commit c87f60c605
6 changed files with 43 additions and 32 deletions

View File

@@ -608,6 +608,15 @@ class UiSettingsViewSerializer(serializers.ModelSerializer):
"settings",
]
def validate_settings(self, settings):
# we never save update checking backend setting
if "update_checking" in settings:
try:
settings["update_checking"].pop("backend_setting")
except KeyError:
pass
return settings
def create(self, validated_data):
ui_settings = UiSettings.objects.update_or_create(
user=validated_data.get("user"),

View File

@@ -847,7 +847,7 @@ class UiSettingsView(GenericAPIView):
ui_settings = {}
if hasattr(user, "ui_settings"):
ui_settings = user.ui_settings.settings
if ui_settings["update_checking"]:
if "update_checking" in ui_settings:
ui_settings["update_checking"][
"backend_setting"
] = settings.ENABLE_UPDATE_CHECK