首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

有没有办法让三元运算符适用于Cloud Firestore安全规则?

Cloud Firestore是谷歌云平台提供的一种NoSQL文档数据库,它用于存储和同步应用程序的数据。在Cloud Firestore的安全规则中,我们可以使用规则语言来定义对数据库的访问权限和验证规则。

三元运算符是一种常见的条件表达式,用于根据条件的真假选择不同的值。然而,在Cloud Firestore的安全规则中,并没有直接支持三元运算符的语法。

尽管如此,我们仍然可以通过其他方式实现类似的功能。一种常见的方法是使用条件表达式的if-else语句。下面是一个示例,演示如何在Cloud Firestore的安全规则中使用if-else语句来模拟三元运算符:

代码语言:txt
复制
service cloud.firestore {
  match /databases/{database}/documents {
    function isDocumentPublic() {
      return request.auth != null && request.auth.uid == resource.data.owner;
    }

    match /collection/{document} {
      allow read: if isDocumentPublic() || request.auth.uid == 'admin';
      allow write: if isDocumentPublic() ? false : request.auth.uid == 'admin';
    }
  }
}

在上述示例中,我们定义了一个名为isDocumentPublic()的函数,用于判断文档是否为公开访问。然后,在readwrite规则中,我们使用if-else语句来根据条件决定是否允许访问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券