使用Rally SDK 2.0,我正在定制看板板应用程序。我正在做的其中一个项目是尝试添加将故事设置为BLOCKED状态的人。
调试时似乎没问题,但由于某种原因,我的blocker.BlockedBy设置为undefined。我猜我需要做一些与此不同的事情吗?
var blocker = this.getRecord()。get(“Blocker”);
// blocker.BlockedBy在这里未定义 //阻塞似乎已填充,但我不确定它实际上是阻塞对象。
我还在卡片的其他字段中添加了“Blocker” getAdditionalFetchFields:function(){ return ['Owner','FormattedID','Blocked','Ready','Priority','DefectStatus','Defects',“PlanEstimate”,“LastUpdateDate”,“TaskStatus”,“ Blocker “];
在文档中它说类型Blocker是“非创建类型”,所以不确定这实际意味着什么......
似乎从调用返回的对象有一个_type字段,将其定义为“Blocker”。
有点卡住,我已经尝试将结果类型化为阻挡者,但仍然没有太多运气。只想知道是谁阻止了这个故事:)
答案 0 :(得分:2)
通过添加Blocker
作为获取字段,它只返回一个表示Blocker对象的简单ref对象。但您也可以告诉fetch获取Blocker字段。因此,如果您将BlockedBy
添加为另一个要提取的字段,则会为您的阻止程序获取该字段。 WSAPI在这里做了一点魔术,以确定BlockedBy
对象上的Blocker
。
BlockedBy
是一个User
对象,因此从中获取用户名称的最简单方法是
var blockerName = this.getRecord().get('Blocker').BlockedBy._refObjectName;