从节点(Firebase、Swift)获取特定子节点数据
我有一个conversations节点,它包含直截了当的子节点,如displayMessage和conversationName,但也包含较大的子节点,如包含会话中发送的所有消息信息的消息。有没有办法只观察特定子节点的数据,因为我想获取imageUrl、name和displayMessage上的数据,但我不想让它获取所有消息上的数据,因为有一个巨大的消息列表,它会不必要地消耗大量数据从节点(Firebase、Swift)获取特定子节点数据,swift,firebase,firebase-realtime-database,Swift,Firebase,Firebase Realtime Database,我有一个conversations节点,它包含直截了当的子节点,如displayMessage和conversationName,但也包含较大的子节点,如包含会话中发送的所有消息信息的消息。有没有办法只观察特定子节点的数据,因为我想获取imageUrl、name和displayMessage上的数据,但我不想让它获取所有消息上的数据,因为有一个巨大的消息列表,它会不必要地消耗大量数据 虽然Firebase数据库允许您在单个分支中混合各种内容,但如果您在单个分支中有多个实体类型,则它通常是一种反模
虽然Firebase数据库允许您在单个分支中混合各种内容,但如果您在单个分支中有多个实体类型,则它通常是一种反模式 在您的JSON示例中,我看到三种主要数据类型:
conversations
conversation1: { conversationName: "", displayMessage: "",lastMessageTime: 1532968664.3149939 }
conversation2: { conversationName: "", displayMessage: "" }
members
conversation1: { ... }
conversation2: { ... }
messages
conversation1: {
"-Llg...": { ... },
"DBC972...": { ... }
}
conversation2: { ... }