这是我的身体要求:
{
"id": "1",
"group_members": [96,97]
}
这里,id 1是组id,group_members 96和97是用户id,我为用户96和97分配了组id 1,当我尝试再次为用户分配相同的id(即96和97)时,不应分配,它应显示消息,表明已为用户分配了此组id
我如何才能做到这一点?我也分享了代码:
try{
$request->request->add(['created_by' => Auth::user()->id]);
$groupMembers = Group::where('id', $request->get('id'))->first();
$groupMembers->users()->attach($request->get('group_members', []));
DB::commit();
return response([
'status' => true,
'message' => 'Group members added',
], 200);
} catch(\Exception $ex) {
DB::rollback();
return response([
'status' => false,
'message' => __('messages.validation_errors'),
'errors' => $ex->getMessage(),
], 500);
}
1条答案
按热度按时间wpx232ag1#
一个简单的方法是使用
syncWithoutDetaching
方法,该方法将自动连接未连接的用户,并忽略已连接的用户。但是,如果你真的需要显示错误消息,下面应该工作:
建议先验证数据。
希望能有所帮助!