Laravelを勉強しているものです。ユーザー情報のテーブルを検索して取得したリストを表示させ
画像のリンクを押すとユーザーの詳細画面が表示される処理を実装しています。
リンクを押すとコントローラーが呼び出されて詳細画面が表示されるのですが、ここの実装がうまくいきません。
コントローラーにユーザーIDを引数として渡したいのですが、以下のエラーが発生します。
「syntax error, unexpected '}', expecting ',' or ')' (View: /.../index.blade.php)」
コントローラー
php
1<?php 2 3namespace App\Http\Controllers; 4 5use Illuminate\Http\Request; 6use Illuminate\Support\Facades\DB; 7 8class UserController extends Controller 9{ 10 //ユーザーテーブルの一覧する 11 public function all() { 12 $users = DB::table('user_info') 13 ->select('user_id', 'picture_path')->get(); 14 return view('index',[ 15 'db1'=>$users 16 ]); 17 } 18 19 //詳細画面を表示する 20 public function showUserDetail($user_id){ 21 return view('detail',compact('user_id')); 22 } 23}
View(index.blade.php)
php
1<!doctype html> 2<html lang="{{ str_replace('_', '-', app()->getLocale()) }}"> 3 <head> 4 <title>ユーザー一覧</title> 5 </head> 6 <body> 7 @foreach ($db1 as $user_info) 8 <a href="{{ action('UserController@showUserDetail', '{{$user_info->user_id}}') }}"> 9 <img src="{{ $user_info-> picture_path }}"> 10 </a> 11 @endforeach 12 </body> 13</html>
View(detail.blade.php)
php
1<!doctype html> 2<html lang="{{ str_replace('_', '-', app()->getLocale()) }}"> 3 <head> 4 <title>ユーザー詳細ページ</title> 5 </head> 6 <body> 7 <p> 8 渡されたユーザーIDは{{$user_id}} 9 </p> 10 </body> 11</html>
Laravel、PHPにお詳しい方がいましたらご回答いただけないでしょうか?
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/11 12:34