在Parse Cloud Code中的beforeSave函数中获取Parse _User的objectId

时间:2015-09-16 05:04:06

标签: parse-platform cloud-code

场景是当新用户添加或注册该用户的对象时,必须在'userPrivileges'类中创建一些默认值,

我正在使用以下代码

Parse.Cloud.beforeSave(Parse.User, function(request, response)
{
  if(request.object.isNew())
  {
    var userPrivilege = Parse.Object.extend("userPrivileges");
    var userPriv = new userPrivilege();
    userPriv.set("userType","Normal");
    userPriv.set("userID",request.object.id);
    userPriv.set("submitQus",true);
    userPriv.save();
    response.success();
  }
  else
  {
    response.success();
  }
});

问题是添加到userPrivileges的对象但是没有得到我分配给'userPrivileges'用户ID的用户的objectId。我错了吗?

1 个答案:

答案 0 :(得分:2)

如果对象objectID因为对象不在数据库中而无法在beforeSave钩子中获取isNew(),则ergo没有id。您应该使用afterSave hook和existed()代替。