前提
ここに質問の内容を詳しく書いてください。
Laravel9で更新機能を作っていたところCall to a member function update() on nullというエラーが出てしまいました。
実現したいこと
Call to a member function update() on nullエラーを解決したい。
発生している問題・エラーメッセージ
Call to a member function update() on null
該当のソースコード
※コントローラ
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\Shop; use App\Models\Shop_user; use App\Models\Like; class UserController extends Controller { public function mypage(Request $id) { $query = Shop::query(); $query->join('areas', 'shops.area_id', '=', 'areas.id') ->join('genres', 'shops.genre_id', '=', 'genres.id')->get(); $items = $query->get(); $like = Like::where('user_id',\Auth::user()->id)->get(); $shop_users = Shop_user::where('user_id',\Auth::user()->id)->get(); return view('user.mypage',compact('items','shop_users','like')); } public function destroy($id) { $shop_users = Shop_user::find($id); $shop_users->delete(); return redirect()->route('user.mypage'); } public function update(Request $request) { $shop_users = Shop_user::find($request->user_id); $shop_users->update([ "date_start" => $request->date_start, "time_start" => $request->time_start, "sum_people" => $request->sum_people, ]); return redirect()->route("user.mypage"); } }
※View
<form action=" {{ route('update') }}" method="post"> @csrf @method('PUT') <table class="reserve_status"> <tr> <th>Shop</th> <td>{{ $shop_user->shop_id }}</td> </tr> <tr> <th><label>Date</label></th> <td><input type="date" name="date_start" value="{{$shop_user->date_start}}"></td> </tr> <tr> <th><label>Time</label></th> <td><input type="time" name="time_start" value="{{$shop_user->time_start}}"></td> </tr> <tr> <th><label>人数</label></th> <td><input type="number" name="sum_people" value="{{$shop_user->sum_people}}"></td> </tr> <tr> <th>予約日時変更</th> <td><input type="submit" value="予約更新"></td> </tr> </table> </form>
補足情報(FW/ツールのバージョンなど)
Laravelで更新機能を作るために下記のサイトを参考にして作成したところ、Call to a member function update() on nullというエラーが出てしまいました。調べてみたのですが、よく分からないためどのようなエラーなのかご教授いただければ幸いです。
※参考サイト
https://implist.dev/entries/0223f2a77cc411c99699585d42eee900

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/01/03 02:58