gpt4 book ai didi

java - Firebase 查询逻辑在 Android 中不起作用

转载 作者:行者123 更新时间:2023-12-02 05:52:26 25 4
gpt4 key购买 nike

我想进行一个查询来检查数据库中是否存在某个名称(总统或秘书)。数据库结构如下。

Firebase database

我有这段代码,但它不起作用。我是不是做错了什么?

mDatabase = FirebaseDatabase.getInstance().getReference();
Query presidentquery = mDatabase.child("validate").child(uid).equalTo("President");
presidentquery.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()) {
for (DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()) {
Candidate p = dataSnapshot1.getValue(Candidate.class);
president.setEnabled(false);
president.setText("Voted Already");
}
}
else{

president.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

startActivity(new Intent(Home.this, AllCandidates.class));
finish();
}
});
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});

最佳答案

看来您知道要加载的确切节点,在这种情况下您不需要 equalTo。相反,您可以使用以下方式查找节点:

Query presidentquery = mDatabase.child("validate").child(uid).child("President");

其余代码可以保持不变。

关于java - Firebase 查询逻辑在 Android 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60941776/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com