【问题标题】:Getting Parse Objects via pointers通过指针获取解析对象
【发布时间】:2016-01-25 14:22:24
【问题描述】:

我正在尝试获取一个包含指向Restaurant 的指针的Reservation 对象。

在 Parse Cloud 代码中,我可以在 response.success 之前的日志中通过 query.include('Restaurant') 获取与 Reservations 关联的餐馆对象。但是,当我在客户端应用程序上收到响应时,Restaurants 恢复为指针。

按照一些答案的建议,我尝试将 JSSDK 版本恢复为 1.4.21.6.7,但这对我不起作用。

Parse.Cloud.define('getreservationsforuser', function(request, response) {
    var user = request.user

    console.log(user)

    var query = new Parse.Query('Reservations')

    query.equalTo('User', user)

    query.include('Restaurant')

    query.find({
        success : function(results) {
            console.log(JSON.stringify(results))
            response.success(results)
        },
        error : function (error) {
            response.error(error)
        }
    })
})

回复:

..."restaurant":{"__type":"Pointer",
              "className":"Restaurants",
               "objectId":"kIIYe7Z0tD"},...

【问题讨论】:

    标签: parse-platform


    【解决方案1】:

    即使您已将指针对象包含在内,您也不能直接从云代码中发回指针对象。您需要手动将该指针对象的内容复制到 javascript 对象。如下:

    var restaurant = {}
    restaurant["id"] = YOUR_POINTER_OBJECT.id;
    restaurant["createdAt"] = YOUR_POINTER_OBJECT.createdAt;
    restaurant["custom_field"] = YOUR_POINTER_OBJECT.get("custom_field");
    

    ps:在您的代码中,除了直接发回响应之外,您似乎什么也不做。我认为在这种情况下解析 REST api 可能是一个更好的选择。

    【讨论】:

    • 您能否提供更多详细信息?当它是预定义类型Parse.Object 时,如何将它们包含在解析对象中?我无法理解您的回答,因为它不会用它创建 Parse 对象。 REST Api 如何成为更好的选择?任何参考/示例?
    【解决方案2】:

    事实证明我的代码实现是正确的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-09
      • 2023-03-16
      • 2023-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多