如何获取创建发布的用户的名称?

How to get the name of the user who created a release?

我一直在查看已经发布的集会问题,但我找不到任何人回答这个问题,或者回答类似的问题。我只是想获取创建版本的用户。显然,发布记录没有任何字段。它确实有一个创建日期字段;这就是为什么我觉得奇怪的是,没有办法从同一个对象中获取创建它的用户。

谢谢。

你是对的 - 没有内置的 CreatedBy 字段可以捕获原始创建者。我不知道为什么。好消息是数据存储在该对象的修订历史中。

您可以通过在加载版本时在提取中包含 RevisionHistory 和 Revisions 以编程方式获取它,然后加载按日期升序排序的 Revisions 集合并获取第一个结果。那应该有一个用户 属性,其中包含创建它的原始用户。

示例:

    var releaseOid = 12345;
    Rally.data.ModelFactory.getModels({
        types: ['Release', 'RevisionHistory'],
        success: function(models) { 
            models.Release.load(releaseOid, {
                fetch: ['RevisionHistory', 'Revisions', 'ObjectID'],
                callback: function(release) {
                    var revisionHistory = Ext.create(models.RevisionHistory, release.get('RevisionHistory'));
                    revisionHistory.getCollection('Revisions', {
                        fetch: ['User'],
                        pageSize: 1,
                        sorters: [{
                            property: 'CreationDate',
                            direction: 'ASC'
                        }],
                    }).load({
                        callback: function(revisions) {
                            console.log(revisions[0].get('User'));
                        }
                    });
                }
            });
        }
    });