我正在尝试从Firebase保存和检索数据,但是在获取正确的语法时遇到了一些麻烦。
用户通过电子邮件和密码的身份验证方法进行注册,并使用相同的详细信息登录。
我有两个编辑文本字段,要求输入名称和语句。 在两个编辑文本框下面有一个按钮,用于将数据保存到数据库。
private void saveQuote(){
String name = author.getText().toString();
String quotes = quote.getText().toString();
Author author = new Author(name, quotes);
//databaseReference.child(u.getUid()).setValue(author);
if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(quotes)){
user = auth.getCurrentUser();
String userID = user.getUid();
databaseReference.child(userID).child("quotes").setValue(author);
}else{
Toast.makeText(this, "Author Name is Empty", Toast.LENGTH_SHORT).show();
}
Toast.makeText(this, "Saved...", Toast.LENGTH_SHORT).show();
}
这个想法是,当用户登录到应用程序时,它将把其Uid保存为数据库中的主磁贴,然后在其下方,应该将用户名和语句另存为一个部分。这意味着,如果他们写了另一个名称和声明并按保存,则在其ID下应创建一个新字段,并写上名称和声明。
save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
saveQuote();
}
});
Firebase规则:
{
"rules": {
"$uid": {
".read": "auth !== null && auth.uid === $uid",
".write": "auth !== null && auth.uid === $uid"
}
}
}
如何保存每个保存数据请求。
想要的格式:
UID
条目
名称
报价
Entry2
名称
报价