2016-06-15 60 views
0

我在Kinvey有一個名爲'Events'的集合,每個事件都有一個字符串格式化的日期來與當前日期進行比較。例如,我創建了事件「Party」,它有一個startDate和endDate(iOS應用程序)。我想要一個自定義端點刪除當前不在此間隔中的事件。如何使用Kinvey業務邏輯從集合中刪除舊對象?

endDate看起來像這樣:「2016-06-15 01:39:26 +0000」 我使用了modules.moment()來獲取當前日期並嘗試與endDate進行比較。如果modules.moment()大於endDate,則事件將從db中刪除。

我想要一個自定義EndPoint,因爲此方法將始終運行計劃以始終檢查事件是否已結束。我對JavaScript的知識很差,我嘗試了很多例子,但我似乎甚至沒有接近解決方案。

回答

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儀表板中的此自定義端點。

感謝, Pranav Kinvey支持

+1

最後我解決我的問題,通過閱讀提供Kinvey的文件。沒有一個具體的例子,但我能夠應用它。非常感謝你,這對我也很有用,它是我實施的代碼更清晰的代碼。謝謝! :) –