$user = User::where('id', $id)->get();
$user->name = $name;
$user->save();
この処理を行うと
Method save does not exist.
と出ました。
何が原因かというと、
get()はデフォルトでは結果が1件の場合でも「配列」を返します。
そのためget()をつかう場合はこのようにしないとエラーになってしまいます。$users = User::where('id', $id)->get(); foreach($users as $user) { $user->name= $name; $user->save(); }
結果が1件だと分かりきっている場合はfirst()を使いましょう。
$user = User::where('id', $id)->first(); $user->name = $name; $user->save();
もしくはこのようにupdate()メソッドを使っても良いかもしれません。
User::where('id', $id)->update(['name' => $name]);
配列に対してだとsaveメソットは正常に動作しない、とのことです。
これの引用です。