我正在尝试获取跟随当前用户的所有用户。由于某种原因,Parse在'to'字段中返回未定义的用户名,但我可以从'from'字段中检索用户名,如下所示:
var query = new Parse.Query("Follow");
query.equalTo("to", Parse.User.current());
query.find({
success: function(users){
for (var i = 0; i < users.length; i++) {
console.log(users[i].get('from').get('username')) // returns current username
console.log(users[i].get('to').get('username')) / returns undefined
}
}
});
但这些值确实存在且有用户名。我能够使用fetch方法获取值,但我很好奇为什么这种方法不起作用。思考?
答案 0 :(得分:1)
从Doc开始,您没有获得实际的对象,而是获取该对象的参考:
在内部,Parse框架会将引用的对象存储在一个地方,以保持一致性。 ......
并且
默认情况下,在获取对象时,相关的Parse.Objects不是 取。这些对象的值在有之前无法检索 像这样被抓住了:
// Here, post is something similar to your `users[i].get('to')`
var post = fetchedComment.get("parent");
// So you need to fetch it again to get its real object.
post.fetch({
success: function(post) {
var title = post.get("title");
}
});
所以你从users[i].get('to')
获得的是对该用户对象的引用。你可以再次获取它。