2014-10-16 71 views
2

使用parse.com和JavaScript SDK。如何使用parse.com和JavaScript SDK合併多個查詢結果?

我有兩個查詢都可以工作,但我想將結果合併爲一個,這樣我就可以在html頁面上顯示彼此相鄰的不同字段。

什麼是最好的方法來做到這一點?查詢使用不同的類。

我在看用戶指南,想用類似複合查詢的東西嗎?

var mainQuery = Parse.Query.or(queryOne, queryTwo); 

但不知道是否需要這樣做,如果我實際上可以將它們嵌套它們呢?

查詢1

var GlobalBadges = Parse.Object.extend("Global_Badges"); 
var query = new Parse.Query(GlobalBadges); 
query.exists("Global_Badges_img"); 
query.find({ 
    success: function(results) { 
     var friends = []; 
     for (var i = 0; i < results.length; i++) { 
      friends.push({ 
       imageURL: results[i].get('Global_Badges_img'), 
       //friendRequestId: results[i].id, 
       badgename: results[i].get('BadgeName'), 
       category: results[i].get('category') 
      }); 
     } 

查詢2

var toUser = new Parse.User(); 
     toUser.id = toUserId; 

     var myBadges = Parse.Object.extend("myBadges"); 
     var query = new Parse.Query(myBadges); 

     query.equalTo("SentTo", toUser); 
     query.find({ 
      success: function(Badgeresults) { 
       // If the query is successful, store each image URL in an array of image URL's 
       var Badges = []; 
       for (var i = 0; i < Badgeresults.length; i++) { 

         Badges.push({ 
        imageURL: Badgeresults[i].get('BadgeName'), 
        AwardedBy: Badgeresults[i].get('uploadedBy').get('username'), 
        AwardedTo: Badgeresults[i].get('SentTo').get('username'), 
        comment: Badgeresults[i].get('Comment'), 


       }); 

      } 
+0

我不知道你所說的「鞏固成果轉化爲一個」的意思。這些查詢是相關的嗎?他們似乎是不同的東西,沒有什麼共同之處。 – RotaJota 2014-10-16 20:58:16

+0

@ Dano007,你的問題解決了嗎? – jeffdill2 2015-12-22 16:20:24

回答

0

如果我正確理解你的問題,而你只是需要來呈現兩種不同的查詢到您的網頁結果,最簡單的方法將其中一個查詢發生在成功回調的其他查詢中。像下面這樣:

render: function() { 
    var _this = this; 
    var productQuery = new Parse.Query('Product'); 
    var itemQuery = new Parse.Query('Item'); 

    productQuery.find({ 
    success: function(products) { 
     itemQuery.find({ 
     success: function(items) { 
      _this.$el.html(_this.template({ 
      products: products, 
      items: items 
      })); 
     }, 
     error: function(error) { 
      // WHATEVER 
     } 
     }); 
    }, 
    error: function(error) { 
     // WHATEVER 
    } 
    }); 
} 
相關問題