我有一段代码,我试图找出为什么一个变体有效而另一个没有.
return View::make('gameworlds.mygame', compact('fixtures'), compact('teams'))->with('selections', $selections);
Run Code Online (Sandbox Code Playgroud)
这允许我按预期生成夹具,团队和选择的数组视图.
然而,
return View::make('gameworlds.mygame', compact('fixtures'), compact('teams'), compact('selections'));
Run Code Online (Sandbox Code Playgroud)
不会允许产生正确的观点.我仍然可以回显数组并获得预期的结果,但是一旦到达选择部分,视图就不会呈现.
没关系,因为我使用->with()语法但只是一个奇怪的.
谢谢.DS
tli*_*kos 42
该View::make函数有3个参数,根据文档是:
public View make(string $view, array $data = array(), array $mergeData = array())
Run Code Online (Sandbox Code Playgroud)
在你的情况下,这compact('selections')是第四个参数.它没有传递给视图,laravel抛出异常.
另一方面,您可以使用任意数量的with() 时间.因此,这将工作:
return View::make('gameworlds.mygame')
->with(compact('fixtures'))
->with(compact('teams'))
->with(compact('selections'));
Run Code Online (Sandbox Code Playgroud)
j5D*_*Dev 14
我只想跳到这里并纠正(建议替代)前一个答案....
实际上你可以以同样的方式使用紧凑型,但是例如更整洁的......
return View::make('gameworlds.mygame', compact(array('fixtures', 'teams', 'selections')));
Run Code Online (Sandbox Code Playgroud)
或者,如果您使用PHP> 5.4
return View::make('gameworlds.mygame', compact(['fixtures', 'teams', 'selections']));
Run Code Online (Sandbox Code Playgroud)
这是更整洁,在查看应用程序的功能时仍然允许可读性;)
Jos*_*tiz 10
我能够使用
return View::make('myviewfolder.myview', compact('view1','view2','view3'));
Run Code Online (Sandbox Code Playgroud)
我不知道是不是因为我使用PHP 5.5它很棒:)
Laravel 框架 5.6.26
返回多个数组然后我们compact('array1', 'array2', 'array3', ...)用来返回视图。
viewblade 是前端(视图)刀片。
return view('viewblade', compact('view1','view2','view3','view4'));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
111510 次 |
| 最近记录: |