2013-09-24 37 views
1

這對2.04p我很好,但在2.0rc1中,它沒有從服務獲取太多數據。在SDK 2.0rc1中,我如何獲取項目的所有TeamMembers

Rally.data.ModelFactory.getModel({ 
    type : 'Project', 
    success : function(project) { 

     project.load(projectId, { 
      fetch : [ 'TeamMembers','Editors' ], 
      callback : callback 
     }) 
    } 
}); 

在2.04p這給我一個項目中的所有團隊(參考,這是我所需要的)的列表。在2.0rc1中,它只是返回指向所需列表的指針。看起來我必須發送另一個請求才能獲取實際列表。有沒有一個參數可以傳遞給這個方法,它會告訴它實際上讓我獲得TeamMembers和Editors的列表?

我認爲,我期待的是SDK相當於API的的「魂滿對象」

感謝

回答

2

看起來像我剛剛找到了答案:

https://help.rallydev.com/apps/2.0rc1/doc/#!/guide/collections_in_v2

出於性能方面的考慮,在2.x版本的WSAPI中不再可能這樣做。現在每個對象集合都有自己獨特的引用。這意味着現在可以單獨查詢,分頁,排序和過濾這些集合。獲取故事中的缺陷現在將返回一個包含計數和uri的對象,從中檢索收集數據。引用通常是格式/類型/ oid /集合(例如/ hierarchicalrequirement/12345 /缺陷)。

所有記錄現在都有一個getCollection方法來檢索子集合數據。此方法將返回Rally.data.CollectionStore的實例以處理子集合。下面的例子展示瞭如何查詢故事,然後檢索在2.x的WSAPI相關聯的缺陷信息:

Ext.create('Rally.data.WsapiDataStore', { 
model: 'UserStory', 
fetch: ['Defects'], 
pageSize: 1, 
autoLoad: true, 
listeners: { 
    load: function(store, records) { 
     var story = records[0]; 
     var defectInfo = story.get('Defects'); 
     var defectCount = defectInfo.Count; 

     story.getCollection('Defects').load({ 
      fetch: ['FormattedID', 'Name', 'State'], 
      callback: function(records, operation, success) { 
       Ext.Array.each(records, function(defect) { 
        //each record is an instance of the defect model 
        console.log(defect.get('FormattedID') + ' - ' + 
         defect.get('Name') + ': ' + defect.get('State')); 
       }); 
      } 
     }); 
    } 
} 

});

相關問題