Rally 初始化多对象选择器
如果我有一个“名称”数组,如何初始化MultiObjectPicker以选择这些值?我有一个字符串数组,它是一组Release.NameRally 初始化多对象选择器,rally,Rally,如果我有一个“名称”数组,如何初始化MultiObjectPicker以选择这些值?我有一个字符串数组,它是一组Release.Name { xtype: 'rallymultiobjectpicker', modelType: 'release', itemId: 'rankingreleasepicker', fieldLabel: 'Select releases: ', listeners: { blur: this._runQue
{
xtype: 'rallymultiobjectpicker',
modelType: 'release',
itemId: 'rankingreleasepicker',
fieldLabel: 'Select releases: ',
listeners: {
blur: this._runQuery,
render: function( ctrl, eOpts) {ctrl.setValue(this.releaseNames)}, //does not work
scope: this
},
storeConfig: {
filters: [
{
property: 'State',
operator: '!=',
value: 'Accepted'
}
],
context: dataContext
},
value: this.releaseNames //does not work
},
多对象选取器setValue将模型作为输入。最简单的方法是创建一个快速且脏的模型来输入所需的值,因此下面的示例对我很有用。当然,发布对象是我的,我已经注释掉了我没有注释的内容:
Ext.define('PickerRelease',{
extend: 'Ext.data.Model',
fields: [
{ name: '_ref', type:'string' }
]
});
this.releaseNames = [
Ext.create('PickerRelease',{ _ref: '/release/731448'} ),
Ext.create('PickerRelease',{ _ref: '/release/731459'} )
];
this.down('#display_box').add({
xtype: 'rallymultiobjectpicker',
modelType: 'release',
itemId: 'rankingreleasepicker',
fieldLabel: 'Select releases: ',
listeners: {
//blur: this._runQuery,
//render: function( ctrl, eOpts) {ctrl.setValue(this.releaseNames)}, //does not work
scope: this
},
storeConfig: {
filters: [
{
property: 'State',
operator: '!=',
value: 'Accepted'
}
],
//context: dataContext
},
value: this.releaseNames //does not work
});
我还尝试使用_refs、objectID、Stateful、getValue中的完整对象、数据对象来设置值,但没有任何效果。帮助?在处理多个项目时,此代码可能无法满足您的需要。不同的项目可能有相同名称和日期的发布对象,但OID不同。公平地说,如果在多个项目(甚至是子项目)中使用发布名称,那么对象ID将不同。因此,对请求的更一般的响应可能是创建一个存储来获取要放入this.releaseNames的值。或者,更有趣的是,在storeConfig中添加一个监听器,在此时使用setValue查找返回的对象并将它们与名称联系起来。