更新枢纽表的数据 updateExistingPivot() 里面俩个参数指什么?

QQ图片20150330210141.png


三个箭头分别指的是什么是参数???
已邀请:

zhuzhichao

赞同来自: FiveSay

前提是这样的:

关系 : user 和 role 是多对多关系,一个用户可以有多个角色,一个角色可以分配给多个用户。
表 : users roles user_role

其中 user_role 为枢纽表,保存了 user 和 role 的关联关系。它的字段为 user_id, role_id。如果你想在这个关系上添加一个字段 status, 用来表示这个用户的角色是否启用(例如一个用户拥有管理用户和管理帖子的这两个角色,现在就是要关闭一个。),这时候可以用这个方法来操作,

User::find(1)->roles()->updateExistingPivot($roleId, $attributes);

1 : 指的是用户ID
$roleId : 指的是角色的ID
$attributes : 这个数组保存的是要更新的值,可能为 ['status' => false] ,让用户的这个角色不启用。

这样一个操作就可以让这个用户的某个角色是否启用。

要回复问题请先登录注册