我试图在我的数据库中更改单个项目的值,我使用first()来获取项目,但出于某种原因,当我尝试此功能时,每个具有相同主键的条目都具有经过身份验证的用户获取属性' AreFriend'更新为1,为什么?
public function acceptrequest($id)
{
$user = app('Dingo\Api\Auth\Auth')->user();
if (!$targetuser = User::find($id)) {
return response()->json(['status' => "The requested resource does not exists!"], 403);
}
if ($relation = $user->requestspending()->where('user_id', $targetuser->user_id)->first()) {
Friend::unguard();
$relation->AreFriend = 1;
$relation->save();
Friend::unguard();
Friend::reguard();
return response()->json(['status' => "Request accepted!"], 200);
} else {
return response()->json(['status' => "You do not have an invitation from this user!"], 403);
}
}
在我的数据库中,更新了与$ user id的关系。变量$ relation是一个项目,而不是一个集合。