2015-04-02 117 views
0

我正尝试使用Parse查询基于我的朋友和我的活动创建新闻Feed。我有一个名为“MeFollow”的集合[有专栏“我”“followUser”],它显示我跟随的ppl和另一个名为“Activity”的集合,其中存储了toUser, fromUser, type, content使用Parse.com查询制作新闻Feed

我这是怎么找到我的追随者:

var myFollowers = new Parse.Query("MeFollow"); 
myFollowers.equalTo("me", Parse.User.current()); 

,但使用一个查询我找不到我的朋友活动:

var friendsActivity = new Parse.Query("Activity"); 
friendsActivity.equalTo("fromUser", myFollowers.followUser); 

我的活动顺利进行:

var myActivity = new Parse.Query("Activity"); 
myActivity.equalTo("fromUser", Parse.User.current()); 

这里是主要查询:

var mainQuery = Parse.Query.or(myActivity, friendsActivity); 
    mainQuery.include("fromUser"); 
    mainQuery.include("productId"); 
    mainQuery.descending("createdAt"); 
    mainQuery.find({ 
    success: function(results) { 
    console.log(results); 
    response.success(results); 
    }, 
    error: function(error) { 
     response.error(error); 
    // There was an error. 
    } 
}); 

我想我不能做“myFollowers.followUser”!有谁知道我该如何让这成为可能?

PS:我在云中的代码做这所以它是JavaScript的

回答

2

不能使用myFollowers.followUser因为myFollowers返回一个对象,显示followUser之间的关系,而不是followUser对象本身。

您应该使用matchesKeyInQuery,如:

var friendsActivity = new Parse.Query("Activity"); 
    friendsActivity.matchesKeyInQuery("fromUser", "followUser",myFollowers); 

您可以检查此文档这是不容易的主文档中访问:https://www.parse.com/docs/js/api/symbols/Parse.Query.html#matchesKeyInQuery

+0

由于它的工作! – 2015-04-07 03:43:17

+0

很高兴听到:) – Ralphilius 2015-04-07 17:04:32