自动生成ID的Firebase REST orderby嵌套子级?

自动生成ID的Firebase REST orderby嵌套子级?,rest,firebase,firebase-realtime-database,Rest,Firebase,Firebase Realtime Database,如何请求firebase orderby嵌套子级?我的示例数据如下所示: ROOT | +-- post | | | +-- -LHRgRaBkEbh2J04sZcM | | | +-- vote: 1 | +-- -LHRgqbaxDTa5Jl6Wdar | | | +-- vote: 2 | +-- -LHRtsJhu4yl1vi4JS2X |

如何请求firebase orderby嵌套子级?我的示例数据如下所示:

ROOT
 |
 +-- post
 |     |
 |     +-- -LHRgRaBkEbh2J04sZcM
 |            |
 |            +-- vote: 1
 |     +-- -LHRgqbaxDTa5Jl6Wdar
 |            |
 |            +-- vote: 2
 |     +-- -LHRtsJhu4yl1vi4JS2X
 |            |
 |            +-- vote: 3
 |
curl 'https://dinosaur-facts.firebaseio.com/dinosaurs.json?orderBy="dimensions/height"&startAt=3&print=pretty'
根据firebase文档,您可以这样做:

ROOT
 |
 +-- post
 |     |
 |     +-- -LHRgRaBkEbh2J04sZcM
 |            |
 |            +-- vote: 1
 |     +-- -LHRgqbaxDTa5Jl6Wdar
 |            |
 |            +-- vote: 2
 |     +-- -LHRtsJhu4yl1vi4JS2X
 |            |
 |            +-- vote: 3
 |
curl 'https://dinosaur-facts.firebaseio.com/dinosaurs.json?orderBy="dimensions/height"&startAt=3&print=pretty'
但是我不能这样做,因为父节点是自动生成的

orderBy="parent/vote"

如何克服此问题?

Firebase数据库查询会在您查询的位置下获取每个子节点,然后在您指定的属性上对它们进行排序。因此,它们会自动跳过您查询的位置下的单个级别

curl 'https://your-db.firebaseio.com/post.json?orderBy="vote"&startAt=3&print=pretty'

请注意,此返回正确的结果(从
3开始),但结果将排序(因为JSON中的键根据定义是无序的)。

太棒了,谢谢!我在规则中加入了。indexOn,这就成功了!你能告诉我如何按“投票”来排序吗?假设我有1000多个帖子。我应该从firebase加载所有帖子并在应用程序上对它们进行排序吗?这样会降低性能和用户体验吗
limitToLast
完成了任务!