我正在尝试在查询中获得超过200个元素。所以,我已根据this documentation修改了查询应返回的结果限制,但这不起作用。有什么想法吗?
我正在尝试以下方法:
var tasksWithActualsQuery = Ext.create('Rally.data.WsapiDataStore',
{
model: 'Task',
limit: Infinity,
fetch: ['CreationDate', 'Actuals'],
filters:
[
{
property: 'CreationDate',
operator: '<',
value: 'LastMonth'
}
]
});
tasksWithActualsQuery.load({
callback: function(records, operation)
{
if(operation.wasSuccessful())
{
var tasksWithActualsCount = 0;
Ext.Array.each(records, function(record) {
if (record.get('Actuals') != null)
{
tasksWithActualsCount++;
}
});
var tasksCount = records.length;
alert(tasksCount);
}
}
});
答案 0 :(得分:2)
您的代码是正确的 - 重要的部分是限制:无限。
不幸的是,似乎存在缺陷 - Rally.data.WsapiDataStore没有从加载调用向您的回调函数传递正确的参数。它只通过商店而不是记录,操作成功。
这应该让你暂时解决缺陷:
tasksWithActualsQuery.load({
callback: function(store) {
var tasksWithActualsCount = 0;
store.each(function(record) {
if (record.get('Actuals') != null) {
tasksWithActualsCount++;
}
});
var tasksCount = store.getTotalCount();
alert(tasksCount);
}
});