【问题标题】:How do I delete old objects from collection with Kinvey Business Logic?如何使用 Kinvey Business Logic 从集合中删除旧对象?
【发布时间】:2016-10-17 05:12:45
【问题描述】:

我在 Kinvey 有一个名为“事件”的集合,每个事件都有一个字符串格式的日期以与当前日期进行比较。例如,我创建了“Party”事件,它有一个 startDate 和 endDate(iOS 应用程序)。我想要一个自定义端点来删除当前不在此时间间隔内的事件。

endDate 看起来像这样:“2016-06-15 01:39:26 +0000” 我使用 modules.moment() 来获取当前日期并尝试与 endDate 进行比较。如果 modules.moment() 大于 endDate,则从数据库中删除事件。

我想要一个自定义 EndPoint,因为此方法将始终按计划运行以始终检查事件是否已结束。我对 javascript 的了解真的很差,我尝试了很多例子,但我似乎还没有接近解决方案。

【问题讨论】:

    标签: javascript database business-logic kinvey


    【解决方案1】:

    桑德尔,

    以下是您的自定义端点的模板代码,可能会帮助您入门:

    function onRequest(request, response, modules) {
        var logger = modules.logger;
        var events = modules.collectionAccess.collection('Events');
        var moment = modules.moment();
    
        events.remove({"endDate" : {"$lt": moment.toISOString()}},
            function(err,res)
            {
                if(err)
                    {
                    logger.error("Error " + err);
                    return response.error(err);
                    }
                    else
                    {
                    return response.complete(200);
                    }
        });
    }
    

    彻底测试此业务逻辑后,您可以使用 Kinvey 仪表板中此自定义端点的“计划”选项对其进行计划。

    谢谢, 普拉纳夫 金维支持

    【讨论】:

    • 我最终解决了阅读 Kinvey 提供的文件的问题。没有具体的例子,但我能够应用它。非常感谢,这对我也有用,而且我实现的代码更简洁。谢谢! :)
    猜你喜欢
    • 2014-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-14
    • 2011-08-15
    • 1970-01-01
    相关资源
    最近更新 更多