В правиле безопасности firestore resource.data всегда является объектом emtpy, это ошибка или что-то в этом роде?
Правила моего пожарного магазина:
service cloud.firestore {
match /databases/{database}/documents {
match /hospitals/{document=**}{
// allow read :if resource.data.size() == 0; //this return true, resource.data is an empty object
allow read :if resource.data.name != null; // this doesn't work
}
}
}
Мой JavaScript:
auth().onAuthStateChanged((user) => {
if (user) {
//db is the firestore instance
db.collection('/hospitals').get()
.then(printResult)
} else {
}
})
это мой текущий снимок базы данных
решено:
спасибо за ответ Фрэнка
проблема заключается в том, что система безопасности пожарного депо не оценивает фактическое значение документа, когда мы запрашиваем более одного документа, в моем случае
//this doesn't firestore doesnt' evaluate the documetn
db.collection('hospitals').get()
//this will work ,if you need to compare the actual value
db.document('hospitals/somehospital').get()