2016-09-06 3 views
-3

Firebase 프레임 워크를 사용하여 수행중인 최종 프로젝트의 WepApp를 만듭니다. 나는 작은 항공 회사를 관리하고있다.Firebase 데이터베이스가 관련없는 노드를 검색합니다.

{ 
    destination: 
    {New-York: 
      { 
      1:{ 
       person1:"ADAM", 
       person2:"Joy"} 
      2...31: 
     } 
     Los-Angeles:{ 
      1:{ 
       preson1:"Roy", 
       person2:"Noy" 
       } 
      2..31: 
      } 
    } 

어떻게 New-York[1]Los-Angeles[5]에서 Person2person1를 검색 할 수 있습니다 : 나는 아래의 데이터베이스 구조를 가지고? 가능한가? 아니면 다른 사람이 내 대역폭 크레딧을 죽이지 않을 다른 해결책이 있습니까? 고마워.

** 편집 : 웹 응용 프로그램 용으로 사용하고 있으므로 JavaScript로 코드를 작성하고 있습니다 (Web-storm IDE 사용).

var ref=firebase.database().ref('/destination/').once("value"); 
ref.then(function(snapshot){MY-CODE...}) 

하지만 난 당신이에 저장된 값을 검색하려면 내 대역폭이

+0

Q가 명확해야합니다. 사용중인 언어와 플랫폼을 지정하십시오. 또한 무엇을 시도했는지 알려주십시오. – Dravidian

+0

Dravidian은 다음과 같이 말합니다. 현재 어떻게 해결했는지 보지 않고 더 나은 해결책을 생각하는 것은 어렵습니다. 즉, 현재 솔루션이 차선책이라고 생각한다면 앱의 유스 케이스를보다 잘 지원하는 데이터 구조에 대해 생각해야 할 것입니다. [NoSQL 데이터 모델링] (https://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/)에서이 기사를 읽는 것이 좋습니다. –

+0

안녕하세요 .. 내 질문을 편집하여 더 잘 설명되기를 바랍니다. –

답변

0

를 할당 "먹는"야 것을하고 : 내가 사용하는 전체 '대상'객체를 검색하는 의미, 전체 데이터베이스를 당겨 시도 person1 또는 person2를 선택하고 전체 경로를 지정한 다음 snapshot.val()을 호출하면 해당 위치에 저장된 값이 반환됩니다.

firebase.database().ref('destination/New-York/1/person1').on('value', function(snapshot) { 
    console.log(snapshot.val()); //ADAM 
}); 

firebase.database().ref('destination/Los-Angeles/5/person2').on('value', function(snapshot) { 
    console.log(snapshot.val()); //Name of Person 2 
}); 
+0

안녕하세요, 고맙습니다. 명백한 해결 방법은 .. 첫 번째 - 데이터를 함께 처리해야하며 두 번째 데이터베이스에서 정보를 가져와야합니다. 800 ms. 그것은 많은 시간입니다. 다른 솔루션을 찾고 있어요. –

관련 문제