Показывать только элементы, которые имеют ID пользователя в качестве дочернего
Вот правила, которые у меня есть:
{
"rules": {
"deck":{
".read":true,
".write":true,
".indexOn": "user"
}
}
}
В настоящее время, когда я бегу:
deckRef.once('value', function(dataSnapshot) {
console.log(dataSnapshot.ref());
});
Я получаю все мои данные возвращены:
{
"deck" : {
"-JkpwAnieKjQVsdtPD4m" : {
"deckName" : "Deck 1",
"user" : "simplelogin:1"
},
"-Jkq4unexm-qwhO_U2YO" : {
"deckName" : "Deck 2",
"user" : "simplelogin:1"
},
"-Jkq5-II1q5yM6w3ytmG" : {
"deckName" : "Deck 3",
"user" : "simplelogin:6"
},
"-Jks5mbMHmPB9MwnnOCj" : {
"deckName" : "Deck 4",
"user" : "simplelogin:1"
}
}
}
Но я хочу запретить кому-либо доступ к элементам, которые не соответствуют идентификатору пользователя.
Я попытался изменить часть колоды на:
"deck": {
".read":"data.child('user').val() === auth.uid"
}
Но это ничего не возвращает. В идеале я хотел бы, чтобы он возвращал только элементы 1,2 и 4, если вошел пользователь "simplelogin: 1", или пункт 3, если вошел "simplelogin: 6".