我有一个Firebase数据结构,如下所示:
-messages
-myFirstUsername
-5-2-16 04:02:23 AM
-message: 'messageOne',
-direction: 'outgoing'
-5-3-16 04:07:23 AM
-message: 'messageTwo',
-direction: 'outgoing'
-mySecondUsername
-5-4-16 04:02:23 AM
-message: 'messageOne',
-direction: 'outgoing'
-5-5-16 04:02:23 AM
-message: 'messageTwo',
-direction: 'incoming'
我想使用message
和direction
嵌套子键索引所有数据。由于messages
对象下的用户名密钥是动态的,因此我需要在messages
对象本身设置索引。
以下规则是否会将指数设置为两个级别?
{
"rules": {
"messages": {
".indexOn": ["message", "direction"]
}
}
}
答案 0 :(得分:4)
您可以像这样指定动态.indexOn:
{
"rules" : {
"messages" : {
"$userId": {
".indexOn" : ["message", "direction"]
}
}
}
}
我似乎无法在新文档中找到它,但这里是旧文档描述:https://www.firebase.com/docs/security/api/rule/path.html