Rally lookbackapi中的水合物标记

Rally lookbackapi中的水合物标记,rally,appsdk2,lookbackapi,Rally,Appsdk2,Lookbackapi,我正在尝试使用回溯api获取与缺陷相关联的标记。看来不管我怎么做,我都无法让标签水合。有什么想法吗 我在返回查询时获得以下数据: ScheduleState: "Backlog" Tags: Array[1] 0: 3230012667 length: 1 __proto__: Array[0] 我的查询代码是: Ext.create('Rally.data.lookback.SnapshotStore', { fetch: ['Name','Schedule

我正在尝试使用回溯api获取与缺陷相关联的标记。看来不管我怎么做,我都无法让标签水合。有什么想法吗

我在返回查询时获得以下数据:

ScheduleState: "Backlog"
Tags: Array[1]
   0: 3230012667
   length: 1
   __proto__: Array[0]
我的查询代码是:

Ext.create('Rally.data.lookback.SnapshotStore', {
        fetch: ['Name','ScheduleState', 'Project', 'Tags'],
        autoLoad: true,
        listeners: {
            load: function(store, records) {
                console.log(store);
            }
        },
        hydrate: ['Tags'],
        fields: ['Name','ScheduleState', 'Project', 'Tags'],
        filters: [
            {
                property: '_TypeHierarchy',
                operator: '=',
                value: 'Defect'
            },
            {
                property: 'ScheduleState',
                operator: '!=',
                value: 'Accepted'
            },
            {
                property: '__At',
                value: dateString
            }
        ]
    });

我不相信你可以用LBAPI添加标签。我要做的是使用WSAPI创建一个哈希映射,将标记对象ID映射到其名称。这里有一些代码可以实现这一点:

Ext.create('Rally.data.WsapiDataStore', {
    limit : Infinity,
    model : 'Tag',
    fetch : ['ObjectID','Name']
}).load({
    callback: function(store) {
        var tagNameMap = Ext.create('Ext.util.HashMap');
        Ext.Array.each(store.getRecords(), function(record) {
            tagNameMap.add(record.get('ObjectID'), record.get('Name'));
        });
        getDefects(tagNameMap); //Pass the tag name map to the LBAPI request
    }
});
现在只需使用tagNameMap.get(tagOID)来获取标记的名称

希望这有帮助:)