3

SDK 2を使用して、ビルドを選択できるコンボボックスを作成しました。ChangeSetsの配列で何かをしたいリスナーがいますが、配列は属性情報(refなど)のみを返します。昔は、親に欲しいフィールドをフェッチして、子供にも見られました。では、どうすればChangeSetsにリビジョンを提供させることができますか?

コンボボックスの定義は次のとおりです。

this.down('#buildSelector').add({
        xtype: 'rallycombobox',
        displayField: 'Number',
        listeners: {
            scope: this,
            select: function(combo, records, eOpts){
                this._buildResults(combo.getRecord().data);//Build
            },
            ready: function(combo, records, eOpts){
                this._buildResults(combo.getRecord().data);//Build
            }
        },
        width: 280,   
        storeConfig: {
            autoLoad: true,
            model: 'Build',
            pagesize: 20, //# of builds displayed in drop down
             sorters: [{
                        property: 'CreationDate',
                        direction: 'DESC'
                      }],

            listeners: {
                load: function(store, records, successful){
                        console.log("dropdown records", records);
                    }
                }
            }
    });

そのコンソールログは私にこのようなものを与えます

dropdown records 
  Array[200]
    [0 … 13]
      0: Ext.Class.newClass
        data: Object
        BuildDefinition: Object
        Changesets: Array[2]
          0: Object
            _rallyAPIMajor: "1"
            _rallyAPIMinor: "31"
            _ref: "https://audemo.rallydev.com/slm/webservice/1.31/changeset/1260800.js"
            _refObjectName: "BuildHealthReportRepo:1000"
            _type: "Changeset"
            __proto__: Object
          1: Object

等...

4

1 に答える 1

3

これを行うには、フィールド名の配列を含むフェッチプロパティをstoreConfigオブジェクトに追加します。ビルド番号、変更セット、およびリビジョンを取得したいだけの場合、プロパティ定義は次のようになります。

storeConfig: {
        fetch: ['Number', 'Changesets', 'Revision'],
        autoLoad: true,
        model: 'Build',
        pagesize: 20, //# of builds displayed in drop down
        sorters: [{
                    property: 'CreationDate',
                    direction: 'DESC'
                  }],

        listeners: {
            load: function(store, records, successful){
                console.log("dropdown records", records);
            }
        }
}
于 2012-06-14T19:11:16.780 に答える