QueryFilter オブジェクトを使用して、rallycardboard のフィルターを動的に作成しようとしています。最初に、1 つのプロパティと値のペアに対するフィルター処理を含む QueryFilter の配列を作成します。次に、これらのプロパティを QueryFilter に追加するかどうかを決定するために、他のフィールドの値をチェックします。ただし、作成後、オブジェクトにアクセスできても、追加を拒否しているようです。
これがどのように構成されているかの例を次に示します。
var filters = [Ext.create('Rally.data.QueryFilter', {
property: 'attr1',
operator: '=',
value: this.attr1
})];
if (this.attr2 !== "") {
filters[0].and(Ext.create('Rally.data.QueryFilter', {
property: 'attr2',
operator: '=',
value: this.attr2
}));
}
if (this.attr3 !== "") {
filters[0].or(Ext.create('Rally.data.QueryFilter', {
property: 'attr3',
operator: '=',
value: this.attr3
}));
}