Parse Server - 安装类缺少用户列
Posted
技术标签:
【中文标题】Parse Server - 安装类缺少用户列【英文标题】:Parse Server - Installation class missing user column 【发布时间】:2017-02-14 14:48:51 【问题描述】:我正在尝试使用解析服务器向特定用户发送推送通知。但是,安装类没有指向哪个用户拥有此安装的用户列。因此,安装查询不会返回任何内容。我的问题是安装类应该自动创建用户列,还是应该以某种方式关联它们?如果是这样,任何帮助将不胜感激。
附:我正在使用 Cloud Code 发送推送通知。所以我使用的是javascript。
【问题讨论】:
您必须手动将用户类(指针)与安装类链接...理想的方法是当您在客户端创建新安装时,将用户 ID 保存到安装类 【参考方案1】:安装类不会自动设置用户列 - 您必须手动设置。
我建议你创建并保存用户,然后成功回调会将保存的用户对象作为参数,然后你可以在你的安装文档中设置用户。
这是一个快速的 sn-p:
var currentInstallation;
installationModule.getInstallationById(installationId)
.then(function (installation)
if (installation)
currentInstallation = installation;
var user = createParseUser(newUser);
return user.save();
else
// return error
)
.then(function (user)
currentInstallation.set('user', user);
return currentInstallation.save()
, function (error)
// TODO: handle error
);
【讨论】:
谢谢,是否可以为 Parse.User 提供 afterSave 云功能?还是为 Parse.Session 执行 afterSave 更好,因为不同的用户可能会从同一设备登录。您的想法将不胜感激。 很高兴我的回答很有帮助。关于触发器,对于初学者来说,Parse.Session 没有 Cloud Code 触发器,这与其他类不同。这意味着您不能在 Parse.Session 上使用 afterSave。至于在 Parse.User 上使用 afterSave,理论上这是一个好主意,但我唯一担心的是,您不会在触发器中包含 Installation 对象以便将用户与它相关联。 是的,我尝试了 Parse.Session 触发器后它不起作用。我决定在客户端做,我认为这是最简单的方法。以上是关于Parse Server - 安装类缺少用户列的主要内容,如果未能解决你的问题,请参考以下文章
parse-server:如何区分用户类 BeforeSave 中的 signUp 和常规 ParseUser.save?