そこで、変更セットのモデルを作成し、2 つの成果物を含む変更セットを取得して、Artifacts フィールドをフェッチしました。それをコンソール ログに記録すると、2 つの項目が表示されます。このフィールドにプッシュする別の項目 (タスク) があります。アーティファクト配列をコンソール ログに記録すると、3 つのアイテムが得られます。
しかし、直接または set() を使用してフィールドを設定すると、変更セットをコンソール ログに記録しても、まだ 2 つのアーティファクトしかないと見なされます。私は何を間違っているのでしょうか?
Rally.data.ModelFactory.getModel({
type: 'Changeset',
success: function(model) {
model.load( '1234', {
fetch: [ 'Artifacts' ],
callback: function(result, operation) {
if ( operation.wasSuccessful() ){
var artifacts = result.get('Artifacts');
if ( ! artifacts ) {
artifacts = [];
}
artifacts.push( item );
console.log( artifacts );
result.data.Artifacts = artifacts;
//result.set('Artifacts', artifacts);
console.log( result );
result.save( {
callback: function( result, operation ) {
console.log( "After saving: ", operation );
}
} );
}
}
})
}
});