将数据从控制器传递到刀片视图 Laravel

Ile*_*anu 3 php controller view laravel blade

我正在尝试通过 href 将参数发送到从事件列表到事件页面的页面。

我的路线是

 Route::get('eventpage', 'EventController@index')->name('eventpage');
Run Code Online (Sandbox Code Playgroud)

我的事件控制器是

<?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');
}
Run Code Online (Sandbox Code Playgroud)

}

麻烦的是,对于我尝试使用的第一个变量 $n,它给了我一个错误,“未定义的变量:n”

我的刀片代码如下

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

我究竟做错了什么?

Kar*_*hik 5

路线

 Route::get('eventpage', 'EventController@index')->name('eventpage');
Run Code Online (Sandbox Code Playgroud)

事件控制器

<?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'));

}

}
Run Code Online (Sandbox Code Playgroud)

刀片代码

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