Javascript Sequelize:使用set<;创建联接表属性;协会>;

Javascript Sequelize:使用set<;创建联接表属性;协会>;,javascript,mysql,sequelize.js,has-and-belongs-to-many,Javascript,Mysql,Sequelize.js,Has And Belongs To Many,我正在使用Sequelize 4.38.0,但我与belongtomany关联有问题 我这样定义我的表: 所以代码说一个特权可以有很多角色,一个角色也可以有很多特权,所以它是一个n:m关联 正如您在上面看到的,我通过表RolePrivilege创建了该关联,该表有一个附加属性restriction 当我想向角色添加权限时,我通常会这样做: 其中特权只是特权ID的数组。 因此,我现在想将联接表(RolePrivileges)中的限制字段填充为角色关联的每个特权的一个特殊值 因此,我尝试了下面所

我正在使用Sequelize 4.38.0,但我与belongtomany关联有问题

我这样定义我的表:

所以代码说一个特权可以有很多角色,一个角色也可以有很多特权,所以它是一个n:m关联

正如您在上面看到的,我通过表
RolePrivilege
创建了该关联,该表有一个附加属性
restriction

当我想向角色添加权限时,我通常会这样做:

其中
特权
只是特权ID的数组。 因此,我现在想将联接表(
RolePrivileges
)中的
限制字段填充为角色关联的每个特权的一个特殊值

因此,我尝试了下面所描述的方法

然后做了上面同样的查询。但它抛出了一个错误,即无法对未定义设置
限制。在长时间的google会话之后,我尝试在
build
方法中包含关联表,但仍然不起作用


你能帮我一下吗?

有时候错误仍然会出现在屏幕前。 我把文件看错了

而不是写以下内容:

priv.rolePrivileges.restriction = 'a'
我之前只需要创建关联对象:

priv.rolePrivileges = {
  restriction: 'a'
}
也许我可以帮某人做这件事

privileges = privileges.map(p => {
    const priv = Privilege.build({id: p})
    priv.rolePrivileges.restriction = 'a'
    return priv
  })
priv.rolePrivileges.restriction = 'a'
priv.rolePrivileges = {
  restriction: 'a'
}