2013-05-03 64 views
1

我正在用rallyaddnew按鈕創建一個組合項目,但是我想在創建之前對其進行修改。例如,我想添加一個特定的父項,並添加一些標籤。用rallyaddnew創建的修改項目

我猜我可以在beforeCreate()事件中修改對象。但是,如果我這樣做,我使用什麼方法?我看到修改record.data.Name實際上似乎工作,但是做到這一點的正確方法是什麼?

對於像父母或標籤的東西,我想我需要一個Rally.util.Ref對象。但是,再次,修改對象的正確方法是什麼?響應beforeCreate事件做一個record.data.Tags.push(REF)再次似乎有點直接...

回答

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')