Parse.com:使用objectId查找属于用户的所有对象

 清洁剂没看见家门口_200 发布于 2023-02-07 09:29

我有一个解析的类,比如图片.这些中的每一个都属于用户.对此用户的引用存储在Pictures表/类中作为Pointer用户.

在我的云代码中,我试图使用主密钥获取属于用户的所有图片.以下是我的代码:

Parse.Cloud.define("getPictures", function(request, response) {

  Parse.Cloud.useMasterKey();

  var query = new Parse.Query("Pictures");

  query.equalTo("user", request.params.user);

  query.find({
    success: function(results) {

      var status = "Found " + results.length + " pictures for userId " + request.params.user;
      response.success(status);

    },

    error: function() {

      status = "No pictures exist for userId " + request.params.user; 
      response.error(status);
    }
  });
});

例如,该代码输出对于id为'xyz'的特定用户有0张图片.但是,我可以看到用户存储了大量图片.

我还验证了问题不在于使用主密钥,因为我在控制台日志中看到代码正在作为主代码执行.而且,如果我查询图片objectId,它会在结果中出现,这意味着ACL不是问题.

我想我必须在这里使用关系/加入,但我不知道该怎么做.

1 个回答
  • 指针在Parse数据库中存储为对象,因此如果您尝试将字符串与具有query.equalTo()函数的对象进行比较,则不会发现任何内容.这是指针的存储方式:

    {
        __type: 'Pointer',
        className: '_User',
        objectId: user-object-id
    }
    

    如果您正在查询带有指针的类并且希望您的结果是嵌套的整个对象,那么您应该在查询中设置它:

    var query = new Parse.Query('Pictures');
    query.include('user');
    

    在我想要通过指针列搜索的查询中,我将我的用户对象与嵌套的用户对象进行比较.

    var user = new Parse.User();
    
    // Set your id to desired user object id
    user.id = your-user-id;
    
    var query = new Parse.Query('Pictures');
    
    // This include will make your query resut comes with the full object
    // instead of just a pointer
    query.include('user');
    
    // Now you'll compare your local object to database objects
    query.equalTo('user', user);
    query.find({
        success: function(userPicture) {
            response.success(userPicture);
        }
    });
    

    无论如何,似乎如果你有许多与用户相关的图片,你可能正在寻找解析关系而不是指针:https://www.parse.com/docs/relations_guide

    2023-02-07 09:33 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有