从父记录中访问子故事
问题描述:
我正在构建一个拉力赛网格以显示父级故事。对于每一行,我想遍历该故事的所有孩子,并从每个孩子故事中提取一些信息。例如从父记录中访问子故事
Ext.Array.each(data, function(record) {
//Perform custom actions with the data here
//Calculations, etc.
recName=record.get('Name');
if (recName.search(/\[Parent\]/i) != -1) {
// Grab Child Iterations
if (record.get('Children').length) {
var childlist = record.get('Children');
for (var child in childlist) {
// I want to get each child's Iteration !!!
}
} else {
childIter = "none";
}
records.push({
FormattedID: record.get('FormattedID'),
ScheduleState: record.get('ScheduleState'),
Name: recName,
NumChildren: record.get('Children').length,
PRDNumber: record.get('PRDNumber')
});
}
});
但是,在record.get(“儿童”)retuns看起来像对象:
_rallyAPIMajor "1"
_rallyAPIMinor "34"
_ref "https://rally1.rallydev.com/slm/webservice/1.34/hierarchicalrequirement/7272142216.js"
_refObjectName "[Comp] User Story"
_type "HierarchicalRequirement"
我假设有一些分机呼叫将采取_ref URI,下载并解析把JSON变成一个很好的对象我可以开始做childrecord.get('field'),但是对于我来说,我找不到合适的函数来调用。
答
您可以使用记录的型号的加载方法来检索在这个问题/答复中提到的具体项目:
Rally App2.0 - Retrieve a specific story
在你的情况,你可以从现有的记录模式:
var model = record.self;
model.load(child.get('ObjectID'), {
//options
});
然而,在你的情况,如果你只是寻找每个孩子故事的迭代的一些信息,你可能只包括它在抓取您的用于装载父初始WsapiDataStore的:
fetch: ['Children', 'Iteration', 'StartDate', 'EndDate']
谢谢凯尔!有趣的是,如果“fetch:true”没有像当你明确列出“fetch:['Children']”时那样返回关于记录的Children(即没有迭代信息)的尽可能多的信息。“同时,感谢model.load的想法。 “child.get”方法在我工作的范围中不可用,但我认为我可以从孩子的_ref属性中排除OID。最终会使用这两个想法! – CiscoDaveC 2012-08-09 20:53:27