我试图将变量发送到刀片视图,但抛出此错误:
未定义的变量:数据(查看:D:\ wamp \ www \ tienda \ resources \ views \ cliente.blade.php)
这是我的路线:
Route::resource('cliente','ClienteController');
这是我的Controller Cliente:
public function index(){
$data = Cliente::all();
return view('cliente',compact($data));
}
我的刀锋:
@foreach ($data as $user)
<tr>
<td>{{$user->nombre}}</td>
</tr>
@endforeach
我做错了什么?
此外,如果试图做这样的话 控制器客户:
public function index(){
return view('cliente', ['name' => 'James']);
}
和刀片:
{{$name}}
那是行的......只有变量和数组才起作用。
答案 0 :(得分:4)
在您的控制器上试试这个:
public function index(){
$data = Cliente::all();
return view('cliente',compact('data'));
}
From the compact documentation:“每个参数可以是字符串,其中包含变量的名称,或者<数组 < em>变量名。数组中可以包含其他变量名数组; compact()以递归方式处理它。“
答案 1 :(得分:1)
你可以这样试试
public function index(){
$data['data'] = Cliente::all();
return view('cliente', $data);
}
然后你可以像这样用刀片抓住它
@foreach ($data as $user)
<tr>
<td>{{$user->nombre}}</td>
</tr>
@endforeach