未捕获 Rally.data.ModelFactory.getModel():找不到类型的注册工厂:里程碑

Uncaught Rally.data.ModelFactory.getModel(): Could not find registered factory for type: milestone

尝试为每个版本显示 Milestone,但是在尝试为 Milestone 创建 DataStore 时出现错误 未捕获 Rally.data.ModelFactory.getModel():找不到类型的注册工厂:milestone 下面是我的代码对此有任何想法或建议

            _getMileStones: function(startDate, endDate, project_id) {
                var startDateFilter = Ext.create('Rally.data.QueryFilter', {
                    property: 'TargetDate',
                    operator: '>',
                    value: startDate
                });
                startDateFilter = startDateFilter.and({
                    property: 'TargetDate',
                    operator: '<',
                    value: endDate
                });
                startDateFilter = startDateFilter.and({
                    property: 'TargetDate',
                    operator: '!=',
                    value: null
                });
                startDateFilter = startDateFilter.and({
                    property: 'TargetDate',
                    operator: '!=',
                    value: null
                });
                var filters = startDateFilter;
                Ext.create('Rally.data.wsapi.Store',{
                    model: 'milestone',
                    autoLoad: true,
                    filters: filters,
                    context: {
                        project: project_id,
                        projectScopeDown: true,
                        projectScopeUp: false
                    },                          
                    fetch: ['Name','FormattedID','DisplayColor'],
                    listeners: {
                        load: function(store,records) {
                            console.log("records values", records);
                        }
                    }       
                }, this);   
            },

AppSDK2 的当前稳定 rc3 候选版本早于里程碑。它们在 rc3 中不可用。当我使用 rc3 时,我得到与你得到的相同的错误。如果我在应用程序的配置文件中切换到 "x",并使用 rab build 重建应用程序,错误就会消失:

{
   "name": "myapp",
   "className": "CustomApp",
   "server": "https://rally1.rallydev.com",
   "sdk": "x",
   "javascript": [
      "App.js"
   ],
   "css": [
      "app.css"
   ]
}

一般不推荐使用"x"因为它是不断变化的。它不是一个稳定的版本。但只要你知道,你就可以使用 "x"。 AppSDK 的下一个版本可能不会太远,它将包括对 Milestones 的支持。

更新:AppSDK2.0 GA 尚未公布,但预计很快就会发布。如果您使用 "sdk":"2.0",您将获得里程碑数据。

"x" returns 里程碑,但它是一个不断变化的头部版本。 2.0rc3 没有里程碑。

您可以选择使用 2.0,即使它尚未正式可用。

此应用示例:

Ext.define('CustomApp', {
    extend: 'Rally.app.App',
    componentCls: 'app',
    launch: function() {
        Ext.create('Rally.data.wsapi.Store',{
            model: 'milestone',
            autoLoad: true,                         
            fetch: ['Name'],
            listeners: {
                load: function(store,records) {
                    console.log("records values", records);
                }
            }       
        }, this);  
    }
});

连同此配置:

{
   "name": "milestones",
   "className": "CustomApp",
   "server": "https://rally1.rallydev.com",
   "sdk": "2.0",
   "javascript": [
      "App.js"
   ],
   "css": [
      "app.css"
   ]
}

将return里程碑数据: