更新在火力地堡

问题描述:

我有一个火力地堡DB如下基于时间戳:更新在火力地堡

{ 
    "page_id": { 
    "user_1": { 
     "messages": { 
     "1502774604": { 
      "timestamp": 1502774604, 
      "user": false, 
      "content": "Hi" 
     }, 
     "1502774613": { 
      "timestamp": 1502774613, 
      "user": false, 
      "content": "Hello" 
     }, 
     "1502791814": { 
      "timestamp": 1502791814, 
      "user": false, 
      "content": "How are you" 
     } 
     } 
    } 
    } 
} 

我想设置在时间戳小于“1502791814”全部“用户”字段为“真”。 Firebase有可能吗?

为同一的SQL将会像

UPDATE消息设置用户= TRUE其中,时间戳< = 1502791814

PS:我使用的是JavaScript客户端

请考虑做以下事情:

firebase.database().ref('page_id/user1/messages').orderByChild('timestamp').endAt(1502791814) 
    .on('value',function(snap){ 
    //Now snap is an array of nodes that you wanted 
    //Each node can be reached by using the following 
    snap.forEach(function(eachSnap){ 
    //Complete here for update stuff 

    }); 

}); 

希望工程!

+0

那么它循环通过每一个更新? –

+0

我把更新部分留给你了。您可以使用set方法或更新方法。但是,更新方法会更有效率。看看这个:https://firebase.google.com/docs/database/web/read-and-write#updating_or_deleting_data –

+0

好的。将检查。如果你使用nodejs的话,语法也几乎相同? –