Laravel 5变量未被识别

时间:2016-10-23 11:17:40

标签: php laravel variables laravel-5 routing

有点奇怪的问题可能是因为我找到了Laravel的脚。

我有一个编辑页面,可以通过以下方式访问:

Route::get('editRow/{id}', function($id){
    $section = App\Section::where('id', $id)->with('panels')->first();
    return view('front.editrow',['thesection'=>$section]);
});

然后这个表格完成并转到一个控制器,用一个很长的方法来更新表格,结束于:

return view('front.editrow',['message'=>'update successful','id'=>$request->id]);

数据库已更新确定。最初我收到错误,所以我复制了路线,并将其从一个帖子改为帖子:

Route::post('editRow/{id}', function($id){
    $section = App\Section::where('id', $id)->with('panels')->first();
    return view('front.editrow',['thesection'=>$section]);
});

现在虽然这是完全相同的参数等我总是得到;

Undefined variable: thesection

我很困惑,非常感谢这个谜团得到解决!

1 个答案:

答案 0 :(得分:0)

确保 thisction 变量始终传递给视图。

当你这样做时:

return view('front.editrow',['message'=>'update successful', 'id'=>$request->id]);

未提供此变量。您需要在视图中提供它,或者在刀片模板中检查它是否存在:

@if(isset($thesection)
  // whatever you want to do with the section
@endif