首页 > 解决方案 > Firebase 上特定字段的规则

问题描述

我想检查我的数据是否不包含某个字段。

 allow write,update: if (request.resource.data.brand.userID ==  request.auth.uid) &&
           !(plan in request.resource.data.brand.userData) && !(brand in request.resource.data.brand);

最后两个语句给出了plan未知brand的错误。

我的文档是这样的:

{

brand: {
  brand:xxxx
  ..
   userData:{
       paid:{}
   }

}

我想确保没有人可以写入该字段brand.brand,并且brand.userData.paid。可以写入里面的其余字段。

标签: firebasegoogle-cloud-firestorefirebase-security

解决方案


禁用字段的简单答案是:

allow create: if !("ranking" in request.resource.data)

推荐阅读