messages()->create([ ...$request->except('media'), 'user_id' => $request->user()->id, ]); if ($request->hasFile('media')) { foreach ($request->file('media') as $file) { $path = $file->store('media', 'public'); $message->media()->create([ 'file_path' => $path, 'file_name' => $file->getClientOriginalName(), 'mime_type' => $file->getMimeType(), ]); } } // Eager-load relations before broadcasting $message->load('media', 'user'); broadcast(new MessageSent($message)); return redirect()->back(); } /** * Display the specified resource. */ public function show(Message $message) { // } /** * Show the form for editing the specified resource. */ public function edit(Message $message) { // } /** * Update the specified resource in storage. */ public function update(Request $request, Message $message) { // } /** * Remove the specified resource from storage. */ public function destroy(Message $message) { // } }