未定义的变量laravel
问题描述:
我想打电话给变量视图laravel的事,但不工作 这里是我的控制器未定义的变量laravel
public function index($id,$slugify, Request $request,WiuCookie $wcookie)
{
$user = ActionUsers::where('id', $id)->first();
$petition = Petitions::where('slug',$slugify)->first();
$isSigned = $wcookie->checkId($petition->id);
return view('layouts.master',compact('user','petition','isSigned'));
}
,这里是我的观点
@if($isSigned)
<li>
<a href="#">
{{$user->name}}
</a>
</li>
@else
<li>
<a href="#">
register
</a>
</li>
<li>
<a href="#">
log-in
</a>
</li>
@endif
和错误是未定义变量:用户
答
return view('layouts.master',compact(['user'=>$user,'petition'=>$petition,'isSigned'=>isSigned]));
它只是对我的作品完美地使用。
答
试试这个:
$compactData=array('user','petition','isSigned');
return View::make('layouts.master', compact($compactData));
答
尝试这种在通过去除紧凑,并通过与
->with('user',$user)
看看https://stackoverflow.com/questions/22412832/laravel-compact-and-with – Bugfixer
我的猜测是你的''user'查询返回'null',请尝试使用'firstOrFail()'代替。或者,您可以键入这些参数并使用Laravel的路由绑定https://laravel.com/docs/5.5/routing#implicit-binding – morph