知道为什么 Parse.Object.destroyAll() 一次只销毁 20 个对象



我知道我以前使用过Parse.Object.destroyAll()并取得了很大的成功。它做了它应该做的事情,并摧毁了你经过的所有物体。

但是,我目前正在运行以下代码:

Parse.Cloud.job("deleteStuff", function( request, status )
{
    Parse.Cloud.useMasterKey();
    var stuffQuery = new Parse.Query("Stuff");
    var success = new Parse.Promise();
    var failure = new Parse.Promise();
    stuffQuery.doesNotExist("User");
    stuffQuery.limit(1000);
    stuffQuery.find
    (
        function( stuffs )
        {
            console.log("There are " + stuffs.length + " stuffs found.");
            return Parse.Object.destroyAll( stuffs ).then
            (
                function()
                {
                    success.resolve("destroyed all the stuffs");
                },
                function( error )
                {
                    failure.reject("There was an error destroying the stuffs: " + error.message);
                    return failure;
                }
            );
        },
        function( error )
        {
            failure.reject("There was an error querying for the stuffs: " + error.message);
            return failure;
        }
    ).then
    (
        function( success )
        {
            status.success( "deleted all the stuffs with no users" );
        },
        function( error )
        {
            status.error( error );
        }
    );
});

很简单。查询任何未附加用户的"Stuff"对象。删除所有结果。有一个控制台日志,用于打印查询返回的数组中有多少对象。它告诉我有超过 400 个对象要删除。

但是,当我刷新仪表板时,总数仅减少了 20。我已经运行了多次,每次它只删除了 20 次。

这是在我们的测试服务器上运行的,我需要它在我的实时服务器上运行,其中有超过 3000 个这样的对象,没有附加用户......我不会一次删除 3000 个对象 20 个......

知道为什么或何时Parse.Object.destroyAll在这里不起作用吗?

试试这个

Parse.Cloud.job("deleteStuff", function( request, status )
{
Parse.Cloud.useMasterKey();
var stuffQuery = new Parse.Query("Stuff");
stuffQuery.doesNotExist("User");
stuffQuery.limit(1000);
stuffQuery.each(function(stuff)
    {
        return stuff.destroy();
    }
).then(function()
    {
        status.success( "deleted" );
    }
).then(function(error) {
        status.error("Error: " + error.code + " " + error.message);
    });
});

最新更新