【发布时间】:2018-05-22 07:02:05
【问题描述】:
当我运行以下 API 时出现此错误
“间接修改重载属性App\User::$attendance无效”。
这么久我还是想不通。请有人帮我解决这个问题。
public function apiPresent( $id, Request $request )
{
$tokenuser = User::with('attendance')
->where('token', $request->input('token'))->first();
$present = $request->input('present');
$user = User::with('attendance')->find($id);
if( $user && $tokenuser == $user )
{
$user->attendance->present = $present;
$user->attendance->date = Carbon::now()->format('d-m-Y');
$user->attendance->time = Carbon::now()->format('H-i');
$user->attendance->save();
return response()->json([
'status' => 'Ok',
'message' => 'Present Changed',
'Present' => $user->attendance->present
]);
}
else
{
return response()->json([
'status' => 'Fail',
'message' => 'Your state does not changed'
]);
}
}
【问题讨论】:
-
哪种类型的雄辩关系有很多或属于?在用户::with('出席')
-
@kunal >> 在用户模型中,我使用这个'公共函数出席() { return $this->hasOne('App\Attendance'); }' 在考勤模型中,我使用 public function users() { return $this->hasMany('App\User', 'user_id'); }
-
我认为您需要以不同的方式保存这是错误的方式@Htoo