创建解析角色层次结构失败,并且'parent is undefined'

时间:2015-09-16 16:43:17

标签: javascript node.js parse-platform roles

Parse中设置角色层次结构时出现了一个奇怪的错误:

  

未捕获的ReferenceError:未定义父

在Parse中,角色都可以正常创建,我从getRoles获得的关系对象看起来没问题,但是在调用add方法时我得到了这个错误。其他人遇到过类似的东西吗?

这是代码(运行parse@1.6.3,解析/节点实现):

function createRolesForOrganization(organization){
  var self = Parse.User.current();
  var ownerRole = new Parse.Role(organization.id + '_Owner', new Parse.ACL(self)),
      adminRole = new Parse.Role(organization.id + '_Admin', new Parse.ACL(self)),
      userRole = new Parse.Role(organization.id + '_User', new Parse.ACL(self));

  return Parse.Object
    .saveAll([
      ownerRole, 
      adminRole, 
      userRole
    ])
    .then(function(objs){
      ownerRole = objs[0];          
      adminRole = objs[1];
      userRole = objs[2];

      userRole.getRoles().add(adminRole);
      adminRole.getRoles().add(ownerRole);

      return Parse.Object.saveAll([
        ownerRole, 
        adminRole, 
        userRole
      ]);
    });
}

1 个答案:

答案 0 :(得分:1)

这是Parse JavaScript SDK中的一个错误,在此处报告: https://developers.facebook.com/bugs/1677477152487599/

同时快速解决方法是在ParseRelation.js中将第101行的'parent'替换为'this.parent',或者回滚到1.6之前的版本。