您可以在beforeSave回调中编辑数据吗?如果可以,如何编辑?
查看各种文档,这段代码似乎应该可以工作(使用"_User"
或Parse.User
),我可以在日志中看到Ran beforeSave on a User
和new user!
,但密钥aaa
仍然是空的。。
我尝试在user.set
之后添加user.save()
,但仍然没有成功。知道吗?
Parse.Cloud.beforeSave("_User", function(request, response) {
console.log('Ran beforeSave on a User');
var user = request.object;
if(user.existed()) {
response.success();
} else {
console.log('new user!');
user.set('aaa', 'xxx');
response.success();
}
});
编辑2015/12/03:可能是关键信息,此代码正在heroku上运行。http://blog.parse.com/announcements/introducing-heroku-parse/
编辑2015/12/05:这似乎是Heroku/Parse集成的一个错误。beforeSavehook被调用,但似乎不允许您编辑请求。object.
编辑2015/12/07:我在CloudCode-Express
回购上创建了一个问题https://github.com/ParsePlatform/CloudCode-Express/issues/6
使用Webhook,您需要将更改后的对象:
response.success(object);
更改代码以使用isNew()
方法:
Parse.Cloud.beforeSave(Parse.User, function(request, response) {
console.log('Ran beforeSave on a User');
if(!request.object.isNew()) {
response.success();
} else {
console.log('new user!');
request.object.set('aaa', 'xxx');
response.success();
}
});