我的问题很简单,是否有可能通过yajra库的dataTable的addColumn()函数将变量发送到刀片视图,类似于compact()
示例代码:
return datatables()
->of($query)
->addColumn('Action','Actions.something')
->rawColumns(['Action'])
->toJson();
我正在寻找这样的东西:
$data = 'foobar';
return datatables()
->of($query)
->addColumn('Action','Actions.something', compact('data'))
->rawColumns(['Action'])
->toJson();
然后在我的刀片视图中执行以下操作:
@if($data == 'foobar')
something...
@else
something...
@endif
答案 0 :(得分:0)
我找到了一个解决方案,这也要感谢那些麻烦阅读该问题的人
代码:
@if (isset($data))
@if($data == 'foobar')
<span>true</span>
@else
<span>false</span>
@endif
@endif
查看(something.blade.php):
BD::statement(INSERT INTO table (SELECT));
答案 1 :(得分:0)
当我尝试用谷歌搜索这个问题时,这个问题是唯一出现的问题。我可以看到@lewis4u 的问题还没有解决。
如果其他人遇到这种情况,以下代码片段将允许您访问模型变量。
return datatables()
->of($query)
->addColumn('Action', function($row){
return view('Actions.something', compact('row'));
})
->rawColumns(['Action'])
->toJson();
关键是将 $row
参数传递给函数。
然后您可以在 $row
视图中访问 something.blade.php
。