"""返回知识库选择按钮列表""" env = request._run_ns userorgid = await env.get_userorgid() async with get_sor_context(env, 'rag') as sor: sql = "SELECT id, name FROM knowledge_bases WHERE org_id IS NULL OR org_id=${org_id}$ ORDER BY name" recs = await sor.sqlExe(sql, {"org_id": userorgid}) buttons = [] for r in recs: buttons.append({ "widgettype": "Text", "options": {"text": str(r.name), "cfontsize": 12, "padding": "4px 12px", "bgcolor": "#eee", "color": "#333", "borderRadius": "4px", "css": "clickable kb-btn"}, "binds": [{"wid": "self", "event": "click", "actiontype": "script", "target": "self", "script": f"var f=document.querySelector('[name=kb_id]');if(f)f.value='{r.id}';var btns=document.querySelectorAll('.kb-btn');for(var i=0;i