2014-05-22 9 views
1

업데이트하는 동안 하위 노드를 추가하려고합니다. 예를 베스트 :자식을 추가하는 Firebase 업데이트 수행

name: 'mike' 
     address: '123 main street' 

name: 'paul' 
     address: '1189 second avenue' 

name: 'ethyl' 
     address: '22 appletree lane' 
     pet_count: 3 

그래서, "마이크는"꺼지고 보호소에서 개를 얻는다, 그래서 나는 그가 어떤이 있거나 자신이 하나가없는 경우 카운트를 증가하지 않는 경우 자신의 애완 동물을 추가해야합니다. 원하는 결과는 다음과 같습니다

name: 'mike' 
     address: '123 main street' 
     pet_count: 1 

name: 'paul' 
     address: '1189 second avenue' 

name: 'ethyl' 
     address: '22 appletree lane' 
     pet_count: 3 

지금, 마이크의 빠르게 성장하는 무리에 다른 애완 동물을 추가 할 경우, 내가 얻을 ...

name: 'mike' 
     address: '123 main street' 
     pet_count: 1 

name: 'paul' 
     address: '1189 second avenue' 

name: 'ethyl' 
     address: '22 appletree lane' 
     pet_count: 3 

가 이해 개수의 증분이 응용 프로그램 별과 나는 그걸로 괜찮아. 아무 것도 없으면 pet_count 노드를 추가하는 방법을 모르겠습니다. 어떤 언어 든 괜찮습니다. Javascript는 코드에서 응답하려는 경우 중립적으로 보입니다.

내가 좋아하는 것을 시도했다 :

nameRef.child('mike').set({address: '123 main street', 
          pet_count: 1}); 

을하며 변경된 이벤트를 발생하지만 난 포지에 그것을 볼 수 없습니다. 나는 데이터가 지속된다고 생각하지 않는다.

나는 또한 시도했다 :

nameRef.update({name: 'mike', {address: '123 main street', 
          pet_count: 1}); 

그 마지막 두 바로 해당 했어야?

내가 여기에없는 것에 대한 힌트가 있습니까?

답변

1

시도한 것을 수행 한 후 애완 동물 수에 대해 Firebase에 들어가는 것은 무엇입니까? pet_count가 1로 표시되는지 또는 firebase에 전혀 표시되지 않는지 귀하의 질문에서 알 수 없습니다. 매번 pet_count를 1로 설정하는 것 같습니다. 대신 pet_count 일을하지만처럼 증가 카운터가 보이는 것을 확실하지 : 1, 당신의 카운터의 값으로 설정 pet_count : 카운터 값

nameRef.child('mike').set({name: 'mike', {address: '123 main street', 
         pet_count: CounterValue}); 

업데이트는 새 키를 생성하는 경우가 아무튼 경우 나도 몰라 존재하지 않습니다.

+0

전혀 표시되지 않습니다. 이것은 공통점이 있습니까? 즉석에서 "스키마"를 수정 하시겠습니까? –

+0

안녕하세요, 방금 시도했는데 두 가지 제안을 모두 시도했습니다 (업데이트 및 설정). 그래서 당신의 설정으로 다른 일이 진행되고있는 것처럼 들리지만 jsfiddle에 코드를 게시 할 수 있습니까? 어쩌면 당신의 nameRef가 다른 노드를 가리킬 수도 있습니다. –

+0

당신은 그것을 얻었다! nameRef는 자식이 아닌 루트 수준 노드를 가리 킵니다. 어떻게 된 것인지 모르겠지만 지금은 작동하고 있습니다. 고마워 –