|
|
@@ -148,17 +148,19 @@ def serialize_milvus_result(data):
|
|
|
return [serialize_milvus_result(item) for item in data]
|
|
|
elif hasattr(data, '__iter__') and not isinstance(data, (str, bytes)):
|
|
|
# 处理 RepeatedScalarContainer 等可迭代对象
|
|
|
- return [serialize_milvus_result(item) for item in data]
|
|
|
+ # 先转换为列表,确保返回的是真正的列表而不是字符串表示
|
|
|
+ try:
|
|
|
+ return [serialize_milvus_result(item) for item in list(data)]
|
|
|
+ except:
|
|
|
+ # 如果迭代失败,尝试转换为字符串
|
|
|
+ return str(data)
|
|
|
elif hasattr(data, 'to_dict'):
|
|
|
return serialize_milvus_result(data.to_dict())
|
|
|
elif hasattr(data, '__dict__'):
|
|
|
return serialize_milvus_result(vars(data))
|
|
|
else:
|
|
|
- # 尝试转换为字符串
|
|
|
- try:
|
|
|
- return str(data)
|
|
|
- except:
|
|
|
- return None
|
|
|
+ # 最后的fallback
|
|
|
+ return data
|
|
|
|
|
|
|
|
|
def init_db():
|