【问题标题】:Parse retrieve pointer from current user in javascript在javascript中解析从当前用户检索指针
【发布时间】:2015-01-10 18:31:23
【问题描述】:

在 Parse 中,我设置了 User 表,其中包含许多列,其中大部分是字符串,但一个是指向另一个 Parse 类的指针。我想在查询中使用这个指针

在 Java 中,我可以访问要在查询中使用的指针,如下所示:

ParseUser currentUser = ParseUser.getCurrentUser();
ParseObject comParent = currentUser.getParseObject("ComParent");

在 JavaScript 中我尝试过使用:

var currentUser = Parse.User.current();
var comParent = currentUser.get("ComParent");

但这返回未定义。我做错了什么?

【问题讨论】:

    标签: javascript pointers parse-platform


    【解决方案1】:

    According to the documentation:

    "默认情况下,在获取对象时,不会获取相关的 Parse.Objects。这些对象的值在被获取之前无法检索,如下所示:"

    var post = fetchedComment.get("parent");
    post.fetch({
      success: function(post) {
        var title = post.get("title");
    
      }
    });
    

    所以你应该写:

    var currentUser = Parse.User.current();
    var comParent = currentUser.get("ComParent");
    comParent.fetch({
        success: function(comParent) {
            var name = comParent.get("Name");
            alert(name); // this one will work
        }
    });
    alert(comParent.get("Name")); // this one wont work, see below
    

    请记住success是一个异步回调,因此comParentsuccess函数之外将不可用,如果您需要在success之外访问comParent,请查看@987654322 @

    【讨论】:

      【解决方案2】:

      谢谢。我的问题是两件事的结合。首先,正如您正确指出的那样,我没有正确获取对象。其次,我试图从没有关联的 ComParent 对象(Doh!)的用户那里获取对象。无论如何,您的解决方案让我需要获取对象,但我不认为应该是 currentUser 获取对象,它是comParent:

      var currentUser = Parse.User.current();
      var comParent = currentUser.get("ComParent");
          comParent.fetch({
              success: function(comParent) {
                  var name = comParent.get("Name");
                  alert(name);
              }
          });
      

      再次感谢@DelightedD0D

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-02-05
        • 1970-01-01
        • 2019-03-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-05-03
        • 1970-01-01
        相关资源
        最近更新 更多