尝试为每个版本显示里程碑,但在尝试为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);
},
答案 0 :(得分:1)
AppSDK2目前稳定的rc3发布候选者早于里程碑。它们不适用于rc3。当我使用rc3时,我得到了同样的错误。如果我在应用程序的配置文件中切换到&#34; x&#34;,并使用rab build
重建应用程序,则错误消失:
{
"name": "myapp",
"className": "CustomApp",
"server": "https://rally1.rallydev.com",
"sdk": "x",
"javascript": [
"App.js"
],
"css": [
"app.css"
]
}
一般不推荐使用&#34; x&#34;因为它是不断变化的。它不是一个稳定的版本。但只要你知道,你可以使用&#34; x&#34;。 AppSDK下一个版本未来可能不会太远,它将包括对里程碑的支持。
更新:AppSDK2.0 GA尚未公布,但预计很快将发布。如果您使用"sdk":"2.0"
,则会获得里程碑数据。
&#34; X&#34;返回里程碑,但它是一个不断变化的头版本。 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"
]
}
将返回里程碑数据: