使用orderbychild.equalTo()无法检索firebase数据

时间:2018-05-18 14:41:32

标签: android firebase

这是登录:这是添加食物页面:
this is login this is add food page

代码:
code

我的火力基地规则:
my firebase rules

我的火力资料数据:
my firebase data

这是我的FoodInfo代码:

import com.google.firebase.database.IgnoreExtraProperties;

@IgnoreExtraProperties

public class FoodInfo {

public String foodname, foodprice, fooddesc, imageUrl, storename;

public FoodInfo(){

}




public FoodInfo(String foodname, String foodprice, String fooddesc, String imageUrl, String storename ) {
    this.foodname = foodname;
    this.foodprice = foodprice;
    this.fooddesc = fooddesc;
    this.imageUrl = imageUrl;
    this.storename = storename;


}

public String getFoodname() {
    return foodname;
}

public String getFoodprice() {
    return foodprice;
}

public String getFooddesc() {
    return fooddesc;
}

public String getImageUrl() {
    return imageUrl;
}

public String getStorename() {
    return storename;
}

public void setFoodname(String foodname) {
    this.foodname = foodname;
}

public void setFoodprice(String foodprice) {
    this.foodprice = foodprice;
}

public void setFooddesc(String fooddesc) {
    this.fooddesc = fooddesc;
}

public void setImageUrl(String imageUrl) {
    this.imageUrl = imageUrl;
}
}

添加食物页面中的textview将从“输入您的电子邮件”editext获取数据,我正在使用

Intent intent = getIntent();
String StoreName = intent.getStringExtra ("Storename");

现在我的问题是当我点击菜单按钮(这是添加食物页面)时,我希望它只显示具有相同子项和textview的数据(在那里添加食物页面)。所以我使用orderbychild,它是否正确?

我将Storename放在equalTo()中但不起作用。 每次我点击菜单按钮,它都显示“使用未指定的索引。考虑在FoodInfo中添加'.indexOn”:“storename”'到您的安全和Firebase数据库规则以获得更好的性能“

1 个答案:

答案 0 :(得分:0)

孩子的命令应该正常。您可以通过 -

查看
    Log.i("Value", dataSnapshot.getValue().toString());

如果您的意图正常,即它应该在查询中将storename作为“Gg”传递。您将收到所需的数据。

所以,问题可能出在模型中(FoodInfo.class)。所以分享模型(FoodInfo.class)..