fix(retro): _rows_to_dicts用dict(rec)——sqlor行是DictObject,vars()只取内部属性导致复盘素材全空壳(测试机冒烟实测)
This commit is contained in:
parent
38d9897a78
commit
97c7d2f368
@ -30,12 +30,23 @@ def _get_db():
|
|||||||
def _rows_to_dicts(recs, limit=200):
|
def _rows_to_dicts(recs, limit=200):
|
||||||
out = []
|
out = []
|
||||||
for r in (recs or [])[:limit]:
|
for r in (recs or [])[:limit]:
|
||||||
d = {}
|
# sqlor 行是 DictObject:dict(rec) 才能取全部列(vars() 只取内部属性 → 空字典,
|
||||||
for k, v in vars(r).items():
|
# 2026-08-31 测试机冒烟实测:project 名空壳即此因)。照抄 feature_capability._rec_to_dict。
|
||||||
if k.startswith('_') or callable(v):
|
if isinstance(r, dict):
|
||||||
|
out.append(dict(r))
|
||||||
|
continue
|
||||||
|
try:
|
||||||
|
out.append(dict(r))
|
||||||
|
continue
|
||||||
|
except (TypeError, ValueError):
|
||||||
|
pass
|
||||||
|
if hasattr(r, "to_dict"):
|
||||||
|
try:
|
||||||
|
out.append(r.to_dict())
|
||||||
continue
|
continue
|
||||||
d[k] = v
|
except Exception:
|
||||||
out.append(d)
|
pass
|
||||||
|
out.append({})
|
||||||
return out
|
return out
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user