我遇到以下错误:
FIREBASE警告:使用未指定的索引。您的数据将在客户端上下载并过滤。考虑在/ questions的安全规则中添加“ .indexOn”:“ answers / dodzzdzodzdz”,以提高性能。我尝试了一切,但仍然无法正常工作?
我的数据库规则:
const ref = FirebaseRef.child('questions');
const UID = Firebase.auth().currentUser.uid;
ref
.orderByChild('answers/' + UID)
.limitToLast(this.state.limit)
.once('value',snapshot => {
console.log('FireB ',snapshot);
我的代码:
"my_answers" : {
"yrpgRXZ8LMbzGbBGs3M0WZ1V0WY2" : {
"-LswFeY4lyIvX4DFFNue" : {
"answers" : "Www","date_add" : 1572970139448,"question" : "2"
}
}
},"my_questions" : {
"9jNkvzr0chgPi0SC6rXMlVWdOF12" : {
"-LswFbyh-SP_vuj13MK_" : {
"date_add" : 1572969021413,"question" : "1"
},"-LswFeY4lyIvX4DFFNue" : {
"date_add" : 1572969031933,"questions" : {
"-LswFbyh-SP_vuj13MK_" : {
"author" : "9jNkvzr0chgPi0SC6rXMlVWdOF12","date_add" : 1572969021413,"question" : "1"
},"-LswFeY4lyIvX4DFFNue" : {
"answer" : {
"yrpgRXZ8LMbzGbBGs3M0WZ1V0WY2" : {
"answer" : "Www","date_add" : 1572970139448
}
},"author" : "9jNkvzr0chgPi0SC6rXMlVWdOF12","date_add" : 1572969031933,"question" : "2"
}
},
我的数据库:
List<Map<String,Object>> mapList = jdbctemplate.queryForList(query));
return mapList.stream().collect(Collectors.toMap(k -> (Long) k.get("userid"),k -> (String) k.get("username")));
除此错误外,在此数据库中,更普遍的是,还会有用户发布问题,而响应者也回答问题!所以我做了一个my_questions用于按用户列出问题,my_answers用于按回答者列出答案,以及问题公开列表,当响应者回答这个问题时,谁将得到更新(添加答案:),有很多重复的数据,但是我读过与firebase有关的事情?