Firebase:如何编写针对多个节点的验证规则。

时间:2016-06-21 08:46:56

标签: firebase firebase-realtime-database firebase-security

我想验证名字和姓氏不是空的,两者的规则几乎相同。如何编写一条规则来验证两者?

请考虑以下事项。

-- profile
     -- birthday:        "1996-February-2"
     -- email:           "human@earth.planet"
     -- firstname:       "human"   
     -- gender:          "1"
     -- lastname:        "man"

规则:

"profile":{
          "firstname, lastname":{
                   ".validate": "newData.isString()
                                 && newData.val().length < 30
                                 && newData.val().length > 2
                                "
           },

我认为&#34;名字,姓氏:{}&#34; 不是有效的语法,因为名字姓氏正在被选中。

有办法做到这一点吗?

1 个答案:

答案 0 :(得分:1)

Firebase鼓励数据扁平化。因此,拥有许多父节点而不是许多子节点是可以的。这也直接意味着可以有重复的规则。

拥有扁平单节点规则的一个主要优点是它使您的规则具有可读性。保持节点之后的类似规则,并在节点之后用空格分隔不同的规则,以使它们进一步可读和杵状持。

这样,无论何时需要更改类似规则,都可以轻松完成。不值得花更多的时间在这上面。