Когда вы используете where
, результатом будет Query Builder
, а не элемент вашей пользовательской модели, для которого вы можете вызывать операции CRUD.Таким образом, вы должны получить результат обратно и вызвать save для него, поэтому замените ваш блок следующим:
if ($user = user::where('email', $email)->first()) {
$user->image_name = $email;
$user->save();
return response()->json(['message' => $Success]);
}
// no need for an else block
return response()->json(['message' => $error_message]);
И для объяснения first()
вернет null
, если запись не найдена, что означаетfalse
условие и он вернет ваше сообщение об ошибке, если найдет, он обновит ваш image_name
на электронную почту.(Что не имеет смысла, но это ваш код)