这是我的数据
{
"deck" : {
"-JkpwAnieKjQVsdtPD4m" : {
"deck" : "Deck 1",
"user" : "simplelogin:1"
},
"-Jkq4unexm-qwhO_U2YO" : {
"deck" : "Deck 2",
"user" : "simplelogin:1"
},
"-Jkq5-II1q5yM6w3ytmG" : {
"deck" : "Deck 3",
"user" : "simplelogin:6"
},
"-Jks5mbMHmPB9MwnnOCj" : {
"deck" : "Deck 4",
"user" : "simplelogin:1"
}
}
}如果我想补充:
cards: {
"-GeneratedKey":{
"title":"foo",
"text":"bar",
}
}要用甲板“2号甲板”来表示这个项目,我如何选择那个对象来推动它。最终结果将是:
{
"deck" : {
"-JkpwAnieKjQVsdtPD4m" : {
"deck" : "Deck 1",
"user" : "simplelogin:1"
},
"-Jkq4unexm-qwhO_U2YO" : {
cards: {
"-GeneratedKey":{
"title":"foo",
"text":"bar",
}
}
"deck" : "Deck 2",
"user" : "simplelogin:1"
},
"-Jkq5-II1q5yM6w3ytmG" : {
"deck" : "Deck 3",
"user" : "simplelogin:6"
},
"-Jks5mbMHmPB9MwnnOCj" : {
"deck" : "Deck 4",
"user" : "simplelogin:1"
}
}
}以下是我尝试过的:
deckRef.orderByChild('deckName').equalTo('Deck 2').push({
card: {
title: 'foo',
text: 'bar'
}
});但这又是个错误。我该怎么做才能做到这一点?
发布于 2015-03-21 00:00:35
deckRef.orderByChild('deckName').equalTo('Deck 2')返回一个查询,而不是引用。查询可以匹配多个节点。即使在您的示例中,它只匹配一个节点,您也需要首先将该节点捕获到一个ref中,以便能够对其进行push。
var query = deckRef.orderByChild('deckName').equalTo('Deck 2');
query.once('child_added', function(snapshot) {
snapshot.ref().child('cards').push({
title: 'foo',
text: 'bar'
});
});https://stackoverflow.com/questions/29174556
复制相似问题