我正在尝试在parse.com中编写一个触发器但是有些错误

时间:2016-01-08 13:38:01

标签: javascript database parse-platform cloud cloud-code

Parse.Cloud.afterSave("StatusTable", function(request) {
        var deviceName = request.object.get("deviceName");
        var lastSeen = request.object.get("entryTime");
        var sectionName = request.object.get("sectionName");

        var LastSeen = Parse.Object.extend("LastSeen");
        var query = new Parse.Query(LastSeen);
        query.equalTo("deviceName", deviceName);

        query.first().then(function(result) {
            result.put("lastSeen", lastSeen);
            result.put("sectionName", sectionName);
            result.save();
        });
    },
    error: function(error) {
        alert("Error: " + error.code + " " + error.message);
    }
);

我有两个表在解析。 StatusTableLastSeen table.I需要编写一个触发器,在{{1}中成功插入时,更新lastSeen表的sectionNameLastSeen列对应StatusTable。此代码无效。

StatusTable

enter image description here

LastSeenTable

enter image description here

1 个答案:

答案 0 :(得分:2)

来自Object文档:https://parse.com/docs/js/api/classes/Parse.Object.html

没有put()方法。请尝试使用set()

query.first().then(function(result) {
    result.set("lastSeen", lastSeen);
    result.set("sectionName", sectionName);
    result.save();
});

此外,您确定要让查询使用first代替find吗?只是为了确保您始终更新所需的对象。