前提・実現したいこと
Laravel。ルートモデルバインディングでUserのデータを得たいのですが下記のエラーが出ます。
発生している問題・エラーメッセージ
Too few arguments to function App\Http\Controllers\ChatsController::sendChat()
該当のソースコード
ChatsController
php
1 public function sendChat($receive,User $user ) 2 { 3 4 $loginId = Auth::id(); 5 6 $param = [ 7 'send' => $loginId, 8 'receive' => $receive, 9 ]; 10 11 // 送信 / 受信のメッセージを取得する 12 $query = Message::where('send' , $loginId)->where('receive' , $receive);; 13 $query->orWhere(function($query) use($loginId , $receive){ 14 $query->where('send' , $receive); 15 $query->where('receive' , $loginId); 16 17 }); 18 19 $messages = $query->get(); 20 21 return view('chats.index' , compact('param' , 'messages','user')); 22 }
web.php
php
1 Route::get('/chats/{user}/send', [ChatsController::class, 'sendChat'])->name('chats.users');
試したこと
引数の$receiveが原因かと思うのですが使わないとほかの箇所でエラーになります。
Userのデータが得られる方法をご存じでしたら伺いたいです。
回答1件
あなたの回答
tips
プレビュー