Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firebase使用规则防止重复类别_Firebase_Firebase Realtime Database_Firebase Security - Fatal编程技术网

Firebase使用规则防止重复类别

Firebase使用规则防止重复类别,firebase,firebase-realtime-database,firebase-security,Firebase,Firebase Realtime Database,Firebase Security,这是我的分类数据库结构 我希望使用Firebase规则防止重复数据 这是我的火基规则 { "rules": { ".read": "auth != null", ".write": "auth != null", "categories": { "$catid": { ".validate": "!root.child(newData.child('type').val()).exists()" } } }

这是我的分类数据库结构

我希望使用Firebase规则防止重复数据

这是我的火基规则

 {
    "rules": {
    ".read": "auth != null",
    ".write": "auth != null",


    "categories": {
      "$catid": {

       ".validate": "!root.child(newData.child('type').val()).exists()"
      }
    }
} 
}
当我再次尝试插入java时,它正在插入java的副本

如何防止根据建议插入重复的类别

我改变了我的数据结构如下

还更新了Firebase规则,如下所示

{
 "rules": {
   ".read": "auth != null",
   ".write": "auth != null",

 "categories": {
   "$categorie":{
        ".validate": "!data.exists()"
   }
 }
}
}
现在,如果数据已经存在,它就不会插入数据

谢谢

按照

我改变了我的数据结构如下

还更新了Firebase规则,如下所示

{
 "rules": {
   ".read": "auth != null",
   ".write": "auth != null",

 "categories": {
   "$categorie":{
        ".validate": "!data.exists()"
   }
 }
}
}
现在,如果数据已经存在,它就不会插入数据


谢谢

我的问题与此类似,建议是一样的:您不能使用安全规则确保唯一值。只有唯一的密钥。谢谢,我已经更新了我的数据结构,它正在工作。我的问题与此类似,建议是一样的:您不能用安全规则确保唯一值。只有唯一的密钥。谢谢,我已经更新了我的数据结构,它正在工作