diff --git a/app/api/endpoints/system.py b/app/api/endpoints/system.py index 696a11a4..927f5b99 100644 --- a/app/api/endpoints/system.py +++ b/app/api/endpoints/system.py @@ -283,6 +283,9 @@ def set_setting(key: str, value: Union[list, dict, bool, int, str] = None, success, message = settings.update_setting(key=key, value=value) return schemas.Response(success=success, message=message) elif key in {item.value for item in SystemConfigKey}: + if isinstance(value, list): + value = list(filter(None, value)) + value = value if value else None SystemConfigOper().set(key, value) return schemas.Response(success=True) else: diff --git a/app/core/meta/releasegroup.py b/app/core/meta/releasegroup.py index b82309c5..20e698f3 100644 --- a/app/core/meta/releasegroup.py +++ b/app/core/meta/releasegroup.py @@ -97,6 +97,8 @@ class ReleaseGroupsMatcher(metaclass=Singleton): if not groups: # 自定义组 custom_release_groups = self.systemconfig.get(SystemConfigKey.CustomReleaseGroups) + if isinstance(custom_release_groups, list): + custom_release_groups = list(filter(None, custom_release_groups)) if custom_release_groups: custom_release_groups_str = '|'.join(custom_release_groups) groups = f"{self.__release_groups}|{custom_release_groups_str}"