Wsapi数据存储查询

时间:2013-10-29 20:21:16

标签: rally

我希望在Rally SDK 2.0rc1中使用Wsapi数据存储查询来获取所选项目(即整个子项目分支)下的所有项目。是否可以使用查询递归获取所有子项目名称?或者我是否必须编写单独的递归函数来获取该信息?如果需要单独的递归函数,我应该如何将该数据填充到例如组合框中?我是否需要创建一个单独的数据存储并从其中的递归函数中推送数据,然后将Combobox的存储链接到它?

另外,如何在Rally SDK 2.0rc1中获取“当前工作区名称”(我在Rally内部工作的工作区)?

2 个答案:

答案 0 :(得分:2)

使用'context'配置选项指定要启动的项目级别,并添加'projectScopeDown'以确保返回子项目。这看起来像这样:

Ext.create('Rally.data.WsapiDataStore', {
    limit : Infinity,
    model : 'Project',      
    fetch : ['Name','ObjectID'],
    context : {
        project : '/project/' + PROJECT_OID,
        projectScopeDown : true
    }
}).load({
    callback: function(store) {
        //Use project store data here
    }
});

要获取当前的上下文数据,请使用:this.getContext()

var workspace = this.getContext().getWorkspace();
var project = this.getContext().getProject();

答案 1 :(得分:0)

如果尝试使用console.log公开this.getContext()。getWorkspace()和this.getContext()。getProject(),您可以更好地了解返回的内容和需要的内容。在我的一个案例中,我不得不使用this.getContext()。getProject()。project。 使用控制台调试语句是根据其使用情况确定所需内容的最佳方式。