如何在 firebase 中为动态键编写 .indexOn?
How to write .indexOn for dynamic keys in firebase?
我的数据设置如下:
Tasks:{
Group 1:{
pushid1:{
date: 18921949021,
title: "Do something"
},
pushid2:{
date: 18921949021,
title: "Do something else"
}
},
Group 2:{
pushid3:{
date: 18921949021,
title: "Do another thing"
}
}
}
我按日期引用它,所以我只获取特定时间后完成的任务。
var now = Date.now();
var taskRef = new Firebase(FB + "/tasks/" + thisGroup);
taskRef.orderByChild('date').startAt(now).on("child_added", function(snap){
console.log(snap.val());
});
一切正常,对于每个组,我都会收到一条警告消息,内容如下:
FIREBASE WARNING: Using an unspecified index. Consider adding ".indexOn": "date" at tasks/Group 1 to your security rules for better performance
如何将其添加到我的安全规则中?我无法为用户创建的每个组添加一个,是否有某种类型的通配符条目?
我猜你正在寻找:
{
".read": true,
".write": true,
"rules": {
"Tasks": {
"$groupid": {
".indexOn": "date"
}
}
}
}
Firebase 文档通常是一本很好的读物。在 security guide 中花一个小时或更少的时间,将确保您更好地理解这个主题和许多其他主题。
我使用了 Frank 的答案,但它给我错误,
Error saving rules - Line 1: Expected 'rules' property.
所以,这对我有用:
{
"rules": {
".read": true,
".write": true,
"Tasks": {
"$groupid": {
".indexOn": "date"
}
}
}
}
我的数据库规则截图:
我的数据设置如下:
Tasks:{
Group 1:{
pushid1:{
date: 18921949021,
title: "Do something"
},
pushid2:{
date: 18921949021,
title: "Do something else"
}
},
Group 2:{
pushid3:{
date: 18921949021,
title: "Do another thing"
}
}
}
我按日期引用它,所以我只获取特定时间后完成的任务。
var now = Date.now();
var taskRef = new Firebase(FB + "/tasks/" + thisGroup);
taskRef.orderByChild('date').startAt(now).on("child_added", function(snap){
console.log(snap.val());
});
一切正常,对于每个组,我都会收到一条警告消息,内容如下:
FIREBASE WARNING: Using an unspecified index. Consider adding ".indexOn": "date" at tasks/Group 1 to your security rules for better performance
如何将其添加到我的安全规则中?我无法为用户创建的每个组添加一个,是否有某种类型的通配符条目?
我猜你正在寻找:
{
".read": true,
".write": true,
"rules": {
"Tasks": {
"$groupid": {
".indexOn": "date"
}
}
}
}
Firebase 文档通常是一本很好的读物。在 security guide 中花一个小时或更少的时间,将确保您更好地理解这个主题和许多其他主题。
我使用了 Frank 的答案,但它给我错误,
Error saving rules - Line 1: Expected 'rules' property.
所以,这对我有用:
{
"rules": {
".read": true,
".write": true,
"Tasks": {
"$groupid": {
".indexOn": "date"
}
}
}
}
我的数据库规则截图: