flutter - arrayContains 查询的 Firestore 安全规则
问题描述
我有一个基本搜索功能的动态查询,它使用 arrayContains 来显示结果;
FirebaseFirestore.instance
.collection('colName')
.where('arrayFieldName', arrayContains: 'somestring')
.snapshots'
是否可以设置一个 Firestore 安全规则来检查 arrayContains 中使用的字符串('somestring')是否至少有 3 个字符?
谢谢,
解决方案
不,这是不可能的。您无法访问该字符串的值或对其值施加约束。如果您希望arrayFieldName
数组属性的元素至少包含三个字符,那么您必须在写入值时强制执行,而不是在查询时强制执行。
推荐阅读
- php - Slim 框架中的设置文件 .env
- c++ - 打印特定地址的字节
- android - 运动编辑器在 Android Studio 4.0.1 中不起作用
- python - Python Flask 应用程序中的“无法在静态 TLS 块中分配内存”
- git - 将克隆的 TFS 存储库推送到具有历史记录的私有存储库
- objective-c - 在 Metal 中更改混合模式
- css - 如何使用 CSS 通过显示他们的 favicon 来突出显示指向特定网站的链接?
- php - 在 docker 中运行 symfony 4.4 Web 服务器时出现“找不到页面”错误
- r - 改变 rnoaa 包的输出?
- react-native - 在 setInterval 期间,React Native 可触摸不透明度在平面列表中失败