3

Firebaseのデータベース構造とクエリです。Firebase indexOn動的値の警告

enter image description here

そして、このような構造上の私のクエリは次のとおりです。

var messageRef = databaseRef.child(`/messagesThread/-KdzCvVW5icW7ZuSIAxV`); 

messageRef.orderByChild(`/readBy/{userId}`).equalTo(false).on("child_added", (snapshots)=>{ 
    console.log("Unread messages = " + snapshots.numChildren()); 
}); 

しかし、クエリは、私は、ダイナミック{userId}でこのindexOnを追加するそれでは、どのよう

FIREBASE WARNING: Using an unspecified index. Consider adding ".indexOn": "readBy/{userId}". 

として警告を与える上記の?

答えて

3

ワイルドカード上のインデックスが大きくないので、あなたは、構造を変更することができ、その後、インデックス:

---readBy-+ 
      | 
      294jjfouurjkfJDGLS+ 
          | 
          isRead: true 

今、あなたは、セキュリティルールに追加することができます。

"readBy": { 
    ".indexOn": "isRead" 
} 
+1

うんを。また、私の答えは、より長い説明を参照してください:http://stackoverflow.com/questions/40656589/firebase-query-if-child-of-child-contains-a-value –

+0

両方ありがとう! –

関連する問題