是否有一种方法可以在flutter应用程序中使用firebase查找具有相同子名称的子项的总和?
我很难计算一组同名儿童的总和。我是这样做的,但不起作用。请帮忙是否有一种方法可以在flutter应用程序中使用firebase查找具有相同子名称的子项的总和?,firebase,flutter,authentication,firebase-realtime-database,storage,Firebase,Flutter,Authentication,Firebase Realtime Database,Storage,我很难计算一组同名儿童的总和。我是这样做的,但不起作用。请帮忙 driverRef.orderByChild("earnings") .once() .then((DataSnapshot dataSnapShot) { print("PPPP" + dataSnapShot.value.toString()); if (dataSnapShot.value != nu
driverRef.orderByChild("earnings")
.once()
.then((DataSnapshot dataSnapShot) {
print("PPPP" + dataSnapShot.value.toString());
if (dataSnapShot.value != null) {
print("kkkk" + j.values.toList()[i]["fare"].toString());
sum = double.parse(j.values.toList()[i]["fare"].toString())+sum;
print("JJJJJ" + sum.toString());
// double oldEarnings = double.parse(
// j.values.toList()[i]["fare"].toString());
// double oldEarnings=sum;
double totalEarnings = fareAmount + sum;
driverRef.child(currentFirebaseUser.uid)
.child("earnings")
.set(
totalEarnings.toStringAsFixed(2));
} else {
double totalEarnings = fareAmount.toDouble();
driverRef.child(currentFirebaseUser.uid).child("earnings").set(
totalEarnings.toStringAsFixed(2));
}
Finish reference有票价,我想找到所有票价儿童的总票价
`
无效储蓄收入(整数金额)
{
FinishRequestRef.orderByChild(“驱动程序详细信息”).once().then((DataSnapshot快照){
if(snapshot.value!=null){
Mapj=snapshot.value;
对于(var i=0;我在那里很好。这里有什么i
和j
。你需要发布你的数据样本,并解释你试图从中检索到什么。你能分享一些关于你的数据库结构的信息吗。也许来自firebase云函数的自动计数器对你来说是一个更好的解决方案。它会为你节省大量的阅读,因为你可以只得到完成的文件,而不需要得到整个元素列表并在本地读取它们。
if(snapshot.value!=null){
Map<dynamic,dynamic>j=snapshot.value;
for (var i = 0; i <j.length; i++)
if (j.values.toList()[i]["Driver Details"]["drivers_id"] ==
currentFirebaseUser.uid) {
// driverRef.child(currentFirebaseUser.uid).child("earnings")
// .once()
// .then((DataSnapshot dataSnapShot) {
// print("PPPP"+dataSnapShot.value.toString());
// if (dataSnapShot.value == null) {
// print("pppp");
//
// double totalEarnings = fareAmount.toDouble();
// driverRef.child(currentFirebaseUser.uid).child("earnings").set(
// totalEarnings.toStringAsFixed(2));}
// });
driverRef.orderByChild("earnings")
.once()
.then((DataSnapshot dataSnapShot) {
print("PPPP" + dataSnapShot.value.toString());
if (dataSnapShot.value != null) {
print("kkkk" + j.values.toList()[i]["fare"].toString());
//var dos= dataSnapShot.value.toString();
double sum=0.0;
sum += double.parse(j.values.toList()[i]["fare"].toString());
print("JJJJJ" + sum.toString());
// double oldEarnings = double.parse(
// j.values.toList()[i]["fare"].toString());
// double oldEarnings=sum;
double totalEarnings = fareAmount + sum;
driverRef.child(currentFirebaseUser.uid)
.child("earnings")
.set(
totalEarnings.toStringAsFixed(2));
} else {
double totalEarnings = fareAmount.toDouble();
driverRef.child(currentFirebaseUser.uid).child("earnings").set(
totalEarnings.toStringAsFixed(2));
}
});
}
}});}`[enter image description here][1] All the finish references fare amounts must be added to drivers earnings child added with cur