2014-11-06 90 views
0

获得来自用户的关系,我想检索JavaScript和解析存储用户的关系。 所以,我有sportevents的列表,并在每个sportevent存在用户(从解析数据库中的关系)。 所以,我得到sportevents列表。 我试图用这段JavaScript代码来获取用户:如何使用解析JavaScript进行Android应用

var user = sportevents[i].get("user").relation("_User"); 

我也试过simpliest方式:

var user = sportevents[i].get("user"); 

也试过:

var user = sportevents[i].relation("user"); 

但似乎没有任何工作。

我的功能整个代码为:

query.find({ 
    success: function(sportevents) { 
     var userIds = []; 

     //On recupere les identifiants des evenements sportifs 
     for (var i = 0; i < sportevents.length; ++i) { 
      var user = sportevents[i].get("user").relation("_User"); 
      userIds[i] = user.id;  
     } 

     var queryPush = new Parse.Query(Parse.Installation); 
     queryPush.containedIn("userId", userIds); 

     Parse.Push.send({ 
      where: queryPush, 
      data: { 
      alert: "Giants scored against the A's! It's now 2-2." 
      } 
     }, { 
      success: function() { 
      // Push was successful 
      }, 
      error: function(error) { 
      // Handle error 
      } 
     }); 

    }, 
    error: function(error) { 
     console.error("Error finding sport events " + error.code + ": " + error.message); 
    } 

我读了很多次解析文档,但似乎没有适合于这种使用情况。

非常感谢您的帮助。

塞巴斯蒂安

+0

没有人有同样的问题或做同样的事情吗? – 2014-11-13 10:28:21

+0

我认为我必须包含query.include(“_ User”);但我无法设法让用户以后... – 2014-11-17 16:02:46

回答

0

多亏了解析Facebook的团队(尤其是约瑟夫疃映藩),得到的答复是:

要加载您必须在Parse.Relation对象使用查询(),像这样的关系:

var query = new Parse.Query("SportEvent"); 
query.find({ 
success: function(sportEvents) { 

for (var i in sportEvents) { 

var userRelation = sportEvents[i].relation("user"); 
userRelation.query().find({ 
success: function(users) { for (var j in users) { 
console.log(users[j].id); } } }); } 
}, error: function(error) { console.log(error); } })