You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于键值查询Firestore数据:获取匹配指定学生ID的班级记录

Firestore查询包含指定学生ID的班级记录

你的Firestore班级文档中,students字段是嵌套对象结构,学生ID作为对象的键(对应你截图里红圈标注的内容)。当前的查询写法where("students.key", "==", "6CgDymxFqFVgTLef2IMhlu5Sxlm2")是错误的,因为这里的key并不是固定字段名,你要匹配的是动态的学生ID键。

正确的做法是使用Firestore的exists操作符,检查指定学生ID作为键是否存在于students对象中:

const studentId = "6CgDymxFqFVgTLef2IMhlu5Sxlm2";
const q = query(classessRef, where(`students.${studentId}`, "exists", true));
const querySnapshot = await getDocs(q);

这个查询会匹配所有students字段中包含该学生ID作为键的班级文档,不管该键对应的值是什么,只要存在就会被返回。

内容的提问来源于stack exchange,提问作者Neel Dsouza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 05:42:34