【问题标题】:passing data from controller to blade view laravel将数据从控制器传递到刀片视图 laravel
【发布时间】:2017-09-03 17:22:15
【问题描述】:

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

我的路线是

 Route::get('eventpage', 'EventController@index')->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

我做错了什么?

【问题讨论】:

  • 有很多问题可以解释这一点,输入您的问题标题会引导您进入大量类似的问题。
  • 我想,直到我已经写了问题,我才知道如何表述它,所以我让它成为......

标签: php laravel view controller blade


【解决方案1】:

路线

 Route::get('eventpage', 'EventController@index')->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

【讨论】:

    【解决方案2】:

    您可以像这样将数据传递给您的视图:

    public function index(Request $request)
    {
      ....
    
      return view('pages.eventPage', compact('id', 'event', 'n'));
    }
    

    【讨论】:

      猜你喜欢
      • 2019-11-13
      • 2019-04-13
      • 1970-01-01
      • 2016-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-31
      • 2017-01-29
      相关资源
      最近更新 更多