2016-06-21 3 views
1

이름과 성을 비워 두지 않고 사실상 동일한 규칙을 적용하고 싶습니다. 어떻게 둘 다 유효성을 검사 할 하나의 규칙을 작성합니까?Firebase : 둘 이상의 노드를 대상으로하는 유효성 검사 규칙을 작성하는 방법.

다음을 고려하십시오.

-- profile 
    -- birthday:  "1996-February-2" 
    -- email:   "[email protected]" 
    -- firstname:  "human" 
    -- gender:   "1" 
    -- lastname:  "man" 

그리고 규칙 :가가되고있다 FIRSTNAME 또는 LASTNAME도 있기 때문에 올바른 구문되지 않습니다 :

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

나는 "{}가 FIRSTNAME는, LASTNAME는"가정 선택된.

이 방법이 있습니까?

답변

1

Firebase는 데이터 병합을 권장합니다. 따라서 많은 자식 노드보다는 많은 부모 노드를 갖는 것이 좋습니다. 이것은 또한 직접적으로 중복 된 규칙을 갖는 것이 좋습니다.

플랫 단일 노드 규칙을 사용하면 얻게되는 주요 이점 중 하나는 규칙을 매우 쉽게 읽을 수 있다는 것입니다. 노드를 따라 비슷한 규칙을 유지하고 공백이있는 다른 규칙을 따르는 노드를 분리하여 더 읽기 쉽고 클럽으로 만들 수 있습니다.

이렇게하면 비슷한 규칙을 변경해야 할 때마다 쉽게 변경할 수 있습니다. 이것에 더 많은 시간을 할애하는 것은 가치가 없습니다.

관련 문제