Firebase 使用通配符限制 child 节点扩展?
Firebase limit child nodes extension with wildcard?
我正在使用 limit child nodes extension 成功地将节点限制为 3 children,结构如下:
{
"-LqRtMWFDSO3QRJDYA39" : {
"r" : 0.84,
"s" : "Mango"
},
"-LshaeOZsIRC80q_n4Kl" : {
"r" : 0.49,
"s" : "Strawberry"
},
"-Ltf2gql89DkVm--xLr3" : {
"r" : 0.44,
"s" : "Cheese"
}
}
是否可以使用具有如下结构的扩展:
{
"34DAvOOUO7N7vp28NtkdAAZp5vD3" : {
"-Lshag6VI55LMps7Fe0G" : {
"post" : true,
"t" : "Brando"
}
},
"35DDKxWrc8c1yERPf2QAYvRPAUb2" : {
"-LocHP4oF6NzmS67yW8r" : {
"post" : true,
"t" : "Abby"
},
"-LscHPsdF6NzmE47sdD3r" : {
"post" : true,
"t" : "Abby "
}
}
}
我需要将用户的通知限制为仅 15 个节点,但是在指定路径时不知道第二个 child 如果没有类似于云函数通配符参数的东西,我无法做到这一点。
感谢您的帮助,干杯!
是的,你可以做到这一点。
由于此扩展实际上是 just a cloud function,您实际上可以在 NODE_PATH
参数中使用通配符格式(实际上,这只是云功能配置的环境变量,如及其触发器配置)。
假设所有这些项目都在顶级节点中,'notifications'。
那么你可以将参数设置为:
notifications/{topId}
这会将扩展的函数创建为 RTDB onCreate
方法触发于:
notifications/{topId}/{messageid}
从而清理 2 层深的通知集。
我正在使用 limit child nodes extension 成功地将节点限制为 3 children,结构如下:
{
"-LqRtMWFDSO3QRJDYA39" : {
"r" : 0.84,
"s" : "Mango"
},
"-LshaeOZsIRC80q_n4Kl" : {
"r" : 0.49,
"s" : "Strawberry"
},
"-Ltf2gql89DkVm--xLr3" : {
"r" : 0.44,
"s" : "Cheese"
}
}
是否可以使用具有如下结构的扩展:
{
"34DAvOOUO7N7vp28NtkdAAZp5vD3" : {
"-Lshag6VI55LMps7Fe0G" : {
"post" : true,
"t" : "Brando"
}
},
"35DDKxWrc8c1yERPf2QAYvRPAUb2" : {
"-LocHP4oF6NzmS67yW8r" : {
"post" : true,
"t" : "Abby"
},
"-LscHPsdF6NzmE47sdD3r" : {
"post" : true,
"t" : "Abby "
}
}
}
我需要将用户的通知限制为仅 15 个节点,但是在指定路径时不知道第二个 child 如果没有类似于云函数通配符参数的东西,我无法做到这一点。
感谢您的帮助,干杯!
是的,你可以做到这一点。
由于此扩展实际上是 just a cloud function,您实际上可以在 NODE_PATH
参数中使用通配符格式(实际上,这只是云功能配置的环境变量,如及其触发器配置)。
假设所有这些项目都在顶级节点中,'notifications'。
那么你可以将参数设置为:
notifications/{topId}
这会将扩展的函数创建为 RTDB onCreate
方法触发于:
notifications/{topId}/{messageid}
从而清理 2 层深的通知集。