feat:修复了关键词功能,并且在focus可用

This commit is contained in:
SengokuCola
2025-06-02 17:46:03 +08:00
parent 6ad2b8b3de
commit 2432c8d0ea
7 changed files with 115 additions and 46 deletions

View File

@@ -78,6 +78,9 @@ class ConfigBase:
raise TypeError(f"Expected an list for {field_type.__name__}, got {type(value).__name__}")
if field_origin_type is list:
# 如果列表元素类型是ConfigBase的子类则对每个元素调用from_dict
if field_type_args and isinstance(field_type_args[0], type) and issubclass(field_type_args[0], ConfigBase):
return [field_type_args[0].from_dict(item) for item in value]
return [cls._convert_field(item, field_type_args[0]) for item in value]
elif field_origin_type is set:
return {cls._convert_field(item, field_type_args[0]) for item in value}