Rally 初始化多对象选择器

Rally 初始化多对象选择器,rally,Rally,如果我有一个“名称”数组,如何初始化MultiObjectPicker以选择这些值?我有一个字符串数组,它是一组Release.Name { xtype: 'rallymultiobjectpicker', modelType: 'release', itemId: 'rankingreleasepicker', fieldLabel: 'Select releases: ', listeners: { blur: this._runQue

如果我有一个“名称”数组,如何初始化MultiObjectPicker以选择这些值?我有一个字符串数组,它是一组Release.Name

{
    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查找返回的对象并将它们与名称联系起来。