Laravel 关系附加(如果尚未附加)
2022-08-30 14:02:04
有没有一种快速的方法来附加关系,如果它们还没有附加。我正在使用此代码来更新模型的关系;
if (!empty($request->get('roles')) && is_array($request->get('roles'))) {
$message->Roles()->attach($request->get('roles'));
}
if (!empty($request->get('users')) && is_array($request->get('users'))) {
$message->Users()->attach($request->get('users'));
}
但是我得到这个错误,我是这个错误;
SQLSTATE[23000]: 完整性约束违规: 1062 重复条目 '1-41' 用于键 'PRIMARY' (SQL: 插入到 (, ) 值 (1, 41), (1, 42), (1, 43), (1, 44), (1, 45), (1, 46), (1, 47), (1, 48), (1, 49), (1, 50))
message_user
message_id
user_id
我想避免通过一个非常长的数组列表来检查哪些用户尚未附加并附加它们。也让我知道这是否是唯一的方法。
我在想这样的事情;
$message->Users()->attachIfNotAttached($request->get('users'));