1

我正在创建一个带有 rallyaddnew 按钮的投资组合项目,但我想在创建它之前对其进行修改。例如,我想添加一个特定的父级,并添加一些标签。

我猜我可以在 beforeCreate() 事件中修改对象。但如果我这样做,我会使用什么方法?我看到修改 record.data.Name 实际上似乎有效,但是正确的方法是什么?

对于诸如父级或标签之类的东西,我想我需要一个 Rally.util.Ref 对象。但同样,修改对象的正确方法是什么?再次响应 beforeCreate 事件执行 record.data.Tags.push(ref) 似乎有点直接......

4

1 回答 1

2

使用beforeCreate侦听器,您将获得要修改的记录:

var addNew = Ext.widget('rallyaddnew', {
    recordTypes: ['User Story'],
    ignoredRequiredFields: ['Name', 'ScheduleState', 'Project'],
    listeners: {
        beforeCreate: function(addNewComponent, record) {
            record.set('Name', 'new name');
            record.set('Parent', '/hierarchicalrequirement/123.js')
        }
    }
});

因此,使用该record.set函数来设置数据,对于作为引用的属性,Parent您应该使用 ref 字符串,例如/hierarchicalrequirement/123.js(如果您有记录,您可以使用record.get('_ref').

于 2013-05-03T01:53:59.513 回答