gpt4 book ai didi

javascript - Parse.com User.get ("column")仅适用于当前用户

转载 作者:行者123 更新时间:2023-11-28 06:49:43 27 4
gpt4 key购买 nike

我有一个名为 Group 的对象,它将用户数组(默认 Parse 用户)存储为列。我试图列出某个组中所有这些用户的显示名称(称为“displayName”的列),但由于某种原因,当我尝试对检索到的数组中的用户使用 .get 函数时,它只给了我当前用户的信息。我检查了我的权限和 ACL,它表示每个用户公共(public)读取,并且用户类具有公共(public)读取和写入权限。这是我正在使用的代码:

var groupObject = Parse.Object.extend("Group");
var users = [];
var groupQuery = new Parse.Query(groupObject);
groupQuery.get(groupId,{
success: function(group)
{
users = group.get("Users");
for(var i=0;i<users.length;i++)
{
var user = users[i];
console.log("display name: " + user.get("displayName") + "username: " + user.get("username") + "id: " + user.id);
}
doneCallback(users);
},
error: function(object, error)
{
errorCallback(error);
}
});

我能够 console.log 他们的所有 id,并且查询成功,但我唯一可以使用 get("column") 的就是当前用户(它是组用户数组的一部分)。

最佳答案

我认为您应该使用关系而不是数组来将用户存储在Group对象中。通过关系添加、删除、获取和访问用户对象将变得更加容易。当用户列表变大时,您还可以避免一些令人头痛的问题。然后您应该能够获取任何给定组中的所有用户,如下所示:

var groupObject = new Parse.Object("Group");
groupObject.set("objectId", yourGroupId);
var query = groupObject.relation("Users").query();

Parse.Cloud.useMasterKey();

query.find().then( function(users) {
_.each(users, function(user) {
console.log(user.get("displayName"));
});
});

关于javascript - Parse.com User.get ("column")仅适用于当前用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33072052/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com