Laravel Blade: 将数组作为参数传递给 yield 部分
Laravel Blade: pass array as parameter to yield section
我想将一个数组作为参数从我的控制器传递到 blade 模板。
我的控制器是这样的:
$myArray = array('data' => 'data');
return View::make('myTableIndex')
->nest('myTable', 'my_table_template', $myArray)
在我的 blade 模板中,我得到了这样的产量:
@yield('myTable', $myArray)
但我收到错误消息:
Error: Array to string conversion
那是因为 yield 函数只接受字符串,对吧?
背景是:
我想要一个 table 模板,我可以将其动态用于多种用途或多种数据,因此我可以对多个 table 使用相同的模板,并将列和内容作为数组传递。
如何将数组传递到我的收益部分?
您可以使用单独的文件并使用 @include
包含该文件,同时您可以使用动态变量名称传递数据,这样您就可以在包含的视图中使用该变量名称,例如:
@include('view.name', ['variableName' => $array])
因此,在 view.name
视图中,您可以使用 $variableName
变量 use/access $array
,并且您可以自由使用 variableName
的任何名称。
因此,在单独的视图中,即:view.name
,您可以使用 section
并使用 $variableName
.
做任何您想做的事
注意:该问题已在评论部分解决,但在此添加为答案以备将来参考,以便任何查看类似问题的观众都可以轻松获得答案。
您不能将参数传递给这些部分,但是由于 @yield
逻辑全部嵌套在使用变量的父级中,因此必须将参数传递给父级声明,您可以在其中添加它:
@extends('parent_view',['parameter_name'=>'parameter_value'])
我想将一个数组作为参数从我的控制器传递到 blade 模板。
我的控制器是这样的:
$myArray = array('data' => 'data');
return View::make('myTableIndex')
->nest('myTable', 'my_table_template', $myArray)
在我的 blade 模板中,我得到了这样的产量:
@yield('myTable', $myArray)
但我收到错误消息:
Error: Array to string conversion
那是因为 yield 函数只接受字符串,对吧?
背景是: 我想要一个 table 模板,我可以将其动态用于多种用途或多种数据,因此我可以对多个 table 使用相同的模板,并将列和内容作为数组传递。
如何将数组传递到我的收益部分?
您可以使用单独的文件并使用 @include
包含该文件,同时您可以使用动态变量名称传递数据,这样您就可以在包含的视图中使用该变量名称,例如:
@include('view.name', ['variableName' => $array])
因此,在 view.name
视图中,您可以使用 $variableName
变量 use/access $array
,并且您可以自由使用 variableName
的任何名称。
因此,在单独的视图中,即:view.name
,您可以使用 section
并使用 $variableName
.
注意:该问题已在评论部分解决,但在此添加为答案以备将来参考,以便任何查看类似问题的观众都可以轻松获得答案。
您不能将参数传递给这些部分,但是由于 @yield
逻辑全部嵌套在使用变量的父级中,因此必须将参数传递给父级声明,您可以在其中添加它:
@extends('parent_view',['parameter_name'=>'parameter_value'])