From 8a7d98f9b7321ef9d8b3015224487f0d5b3a9a63 Mon Sep 17 00:00:00 2001 From: wxg0103 <727495428@qq.com> Date: Mon, 9 Nov 2026 15:23:53 +0800 Subject: [PATCH] fix: preserve omitted auth config fields on partial updates --- apps/portal/serializers/portal.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/portal/serializers/portal.py b/apps/portal/serializers/portal.py index 65714b45897..f45da17acd2 100644 --- a/apps/portal/serializers/portal.py +++ b/apps/portal/serializers/portal.py @@ -149,6 +149,8 @@ def edit(self, instance, with_valid=True): file_fields = ["logo", "id", "create_time", "update_time"] for field, value in instance.items(): if hasattr(portal, field) and field not in file_fields: + if field == "auth_config" and isinstance(value, dict): + value = {**(portal.auth_config or {}), **value} setattr(portal, field, value) for field_name in ["logo"]: if field_name in instance: