属性[日期]在此集合实例上不存在.当我打电话给API时



当我调用此API时,我得到了此错误"属性[date]不存在此集合实例。"

这是我的API代码。

 public function apiGetAttend($id, Request $request)
    {
        $tokenuser = User::with('attendance')
            ->where('token', $request->input('token'))->first();
        $user = User::with('attendance')->find($id);
        if($user && $tokenuser == $user){
            return response()->json([
                'MacAddress' => $user->mac_address,
                'SerialNo'=>$user->serial_no,
                'Date' => $user->attendance->date,
                'Time' => $user->attendance->time,
                'Present' => $user->attendance->present
            ]);
        }
        return response()->json([
            'status' => 'Fail',
            'message' => 'You dont have access to see this user.'
        ]);
    }

由于用户有很多参与度,因此$user->attendance是一个集合而不是对象。因此,您可能需要迭代它和所有参加日期等。或者您可以使用first()收集方法从集合中的第一个出席中获取数据:

'Date' => $user->attendance->first()->date,
'Time' => $user->attendance->first()->time,
'Present' => $user->attendance->first()->present

最新更新