修改使用rallyaddnew创建的项目

时间:2013-05-03 01:02:37

标签: rally

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

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

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

1 个答案:

答案 0 :(得分: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这样的引用的属性,你应该使用引用字符串,如/hierarchicalrequirement/123.js(如果你有记录,你)可以使用record.get('_ref')获得引用。