我有一个名为users的firebase表:FirebaseURL +'/ users /'。命名方案使用facebook id,如下所示:
users/
|_____ facebook-01
|___ name
|___ email
|_____ facebook-02
|___ name
|___ email
它包含名称,电子邮件等信息。我为登录用户启用了一个选项,用于创建用户名,我想要优先设置这个用户名,以便稍后进行搜索。
在代码中,我设置的用户名如下:
new Firebase(URL + '/users/facebook-01')
.child('username').setWithPriority(username, -1);
这正确地在该位置创建用户名,但我无法通过它进行搜索。我试图通过使用这个来找到正确的人:
new Firebase(URL + '/users/').startAt(username).endAt(username)
.once('value', function(data) {
console.log(data.val());
});
根据我的理解,并且阅读了描述SQL之类的查询的博客https://www.firebase.com/blog/2013-10-01-queries-part-one.html,我应该能够使用优先级按用户名查找用户(假设它是唯一的)。
我不确定我在这里做错了什么,但我认为这可能与我如何使用“setWithPriority”设置用户名有关。有什么我想念的吗?
对此的任何帮助将不胜感激。谢谢!