111键指针无效,预期*,但得到字符串

Arc*_*yne 3 javascript parse-platform

我正在向Parse.com保存一个我称之为动作的对象

我收到以下错误:

111 invalid type for key bookPointer, expected *Book, but got string
Run Code Online (Sandbox Code Playgroud)

我使用的代码是:

 action.set("bookPointer", "SPecEgZUhL");

 action.save(null, {
                success: function (data) {
                    // The object was saved successfully.
                    callback(true);
                },
                error: function (data,error) {
                    // The save failed.
                    // error is a Parse.Error with an error code and description.
                    console.log("Error: " + error.code + " " + error.message);
                    callback(false);
                }
            });
Run Code Online (Sandbox Code Playgroud)

我的图书数据如下:

在此输入图像描述

如何通过javascript获取指向我的书,我的*书的指针?

让我觉得它应该与objectId一起正常工作.

谢谢!

Tho*_*din 8

更简单/更强类型的方法是:

// Assumes var Book = Parse.Object.extend("Book");
action.set("bookPointer", new Book({id: "SPecEgZUhL"}));
Run Code Online (Sandbox Code Playgroud)

在类型之后命名列也不常见(例如"book"而不是"bookPointer")


Dog*_*ert 6

正如我在问题的评论中所说,你可以在你的情况下使用像这样的JS对象指定一个指针:

{
  __type: "Pointer",
  className: "Book",
  objectId: "SPecEgZUhL"
}
Run Code Online (Sandbox Code Playgroud)

最终代码变为:

action.set("bookPointer", { __type: "Pointer", className: "Book", objectId: "SPecEgZUhL" });
Run Code Online (Sandbox Code Playgroud)

在本页提供的示例中找到它 - https://www.parse.com/docs/rest