2017-04-08 10 views
3

hrefを使用して、イベントリストからイベントページへのページにパラメータを送信しようとしています。コントローラからブレードビューにデータを渡すlaravel

私のルートは

Route::get('eventpage', '[email protected]')->name('eventpage'); 

ですそして、私のイベントコントローラは

<?php 
namespace App\Http\Controllers; 

use Illuminate\Http\Request; 
use Illuminate\Support\Facades\DB; 

    class EventController extends Controller 
{ 

public function index(Request $request) 
{ 
    $id = $request->query('id'); 
    $event = DB::table('events')->where('id',$id)->get(); 
    $pics = DB::table('pictures')->where('event_id',$id)->get(); 
    $n = count($pics); // the number of pictures for a particular event 
    return view('pages.eventPage'); 
} 

}

トラブルは、私が使用しようと最初の変数のために、$ nが、それは私を与えることですエラー、「未定義変数:n」

ブレードコードは次のとおりです

@for($i = 1; $i < $n; $i++) 
<li data-target="#carousel-example-generic" data-slide-to="{{ $i }}"></li> 
@endfor 

私は間違っていますか?あなたのビューリットルにデータを渡すことができ

+1

です。 – hassan

+1

私は、私がすでに質問を書いているまで、それを公式化する方法を知りませんでしたので、私はそれを聞かせてください... –

答えて

4

ルート

Route::get('eventpage', '[email protected]')->name('eventpage'); 

イベントコントローラ

<?php 
namespace App\Http\Controllers; 

use Illuminate\Http\Request; 
use Illuminate\Support\Facades\DB; 

    class EventController extends Controller 
{ 

public function index(Request $request) 
{ 
    $id = $request->query('id'); 
    $event = DB::table('events')->where('id',$id)->get(); 
    $pics = DB::table('pictures')->where('event_id',$id)->get(); 

return view('pages.eventPage',compact('event','pics')); 

} 

} 

ブレードコード

@for($i = 1; $i < count($pics); $i++) 
<li data-target="#carousel-example-generic" data-slide-to="{{ $i }}"></li> 
@endfor 
+0

ありがとうございます。それは働いた:)次のエラーに笑 –

1

あなたの質問タイトルを入力すると、たくさんの同様の質問が表示されます。これについては、

public function index(Request $request) 
{ 
    .... 

    return view('pages.eventPage', compact('id', 'event', 'n')); 
} 
+2

ありがとう。それは次のエラー笑に:)働いた –

関連する問題