0
我一直在試圖查詢拉力賽只是爲了通過它的ObjectID來獲得某個對象,但後來我在許多情況下最終需要它的父項。例如,對於任務,我需要與其關聯的用戶故事以及該故事的功能。它最終是相當多的回調(公平的警告,這是醜陋的) - 任何人都可以推薦一個更有效的解決方案?通過OID進行查詢的功能非常好,但它太糟糕了,我需要的不僅僅是關於該OID的信息。 (注 - 解決方案必須使用WSAPI,而不是LBAPI)。拉力賽 - 更有效的方式來獲得項目編號
Rally.data.WsapiModelFactory.getModel({
type: 'Task',
context: {
workspace: Rally.util.Ref.getRelativeUri()
},
success: function(taskModel) {
taskModel.load(oid, {
scope: this,
callback: function(taskRecord, op, success) {
if (taskRecord && taskRecord.data.WorkProduct && taskRecord.data.WorkProduct._type == "HierarchicalRequirement") {
// get User Story
Rally.data.WsapiModelFactory.getModel({
type: 'User Story',
context: {
workspace: Rally.util.Ref.getRelativeUri()
},
success: function(userStoryModel) {
userStoryModel.load(taskRecord.data.WorkProduct._ref, {
scope: this,
callback: function(storyRecord, op, success) {
if (storyRecord && storyRecord.data && storyRecord.data.Feature) {
// Get Feature
Rally.data.WsapiModelFactory.getModel({
type: 'PortfolioItem/Feature',
context: {
workspace: Rally.util.Ref.getRelativeUri()
},
success: function(featureModel) {
featureModel.load(storyRecord.data.Feature._ref, {
scope: this,
callback: function(featureRecord) {
displayTask(oid, taskRecord, storyRecord, featureRecord);
}
});
}
});
}
}
});
}
});
}
}
});
}
});
我曾試過一個查詢就像這樣開始,但沒有得到任何結果。你的回答鼓勵我再試一次 - 事實證明,我只需要指定上下文,然後這完美地工作。謝謝! –
很高興能幫到你! –