firebase / firestore规则模拟器是否可以解决现有的实际集合?例如,我有一个名为“用户”和规则的集合
match /users/{uniq_username} {
// let authed users create new uniq names
allow create: if request.auth != null
&& !exists(/databases/$(database)/documents/users/$(uniq_username))
检查该集合中不存在相同名称的文档。我目前在实际集合中只有一个文档名为“ XXX”。在Firestore规则模拟器中执行 create 操作时,对于
格式的数据{"__name__":"/databases/(default)/documents/users/XXX","data":{some data...}}
期望确实会获得“权限被拒绝”(因为实际集合中已经存在文档“ XXX”),而不是获得“允许访问”。
exists
规则在我在这里使用时有问题吗,还是在运行模拟时firestore规则模拟器只是不考虑集合中的实际文档?