Parse Cloud中的关系替换

时间:2015-05-07 03:57:22

标签: javascript parse-platform cloud

在Parse Cloud功能中,我需要替换关系的值。 我该怎么做?

这是我的代码:

Parse.Cloud.define
(“myCloudFunction”, function(request, response) {
    // Code to get myObject …….
    // ………
    // Now I have myObject in the hand.
    myObject.relation("author").add(NewAuthor);
});

如果我保留此代码,myObject将有2位作者:OldAuthor(无论是什么)和NewAuthor。我不想要2位作者。

我需要先摆脱那里的东西。那么有些事情是这样的:

myObject.relation("author").replace(NewAuthor);

只是改变之前的情况。 我没有找到任何浏览网络的东西。

1 个答案:

答案 0 :(得分:0)

你想要的不是一种关系(用于多对多或一对多的关系),你想要一个指针(用于一对一的关系)。

这可以通过将列字段从作者关系更改为作者指针来完成。

Parse.Cloud.define
(“myCloudFunction”, function(request, response) {
    // Code to get myObject …….
    // ………
    // Now I have myObject in the hand.
    myObject.set("author", NewAuthor);
});

或者,您可以删除旧作者,并为该关系添加新作者。你可以这样做:

var relation = myObject.relation("authors");

var query = relation.query();

query.find(
{
    success: function(oldAuthors)
    {
        // Code to remove all old authors from the relation
        for (var i = 0; i < oldAuthors.length; i++)
        {
            relation.remove(oldAuthors[i]);
        }
        relation.add(newAuthor);
        myObject.save();
    },
    error: function(error)
    {

    }
});