列展开
显示效果如下:
如果一行的字段比较多,可以通过列展开功能,来隐藏过多的内容。通过点击列来展开显示,或者点击展开相关的其它数据,比如下面的例子,用来展开一条文章下的10条最新评论:
use Encore\Admin\Widgets\Table;
$grid->column('title', '标题')->expand(function ($model) {
$comments = $model->comments()->take(10)->map(function ($comment) {
return $comment->only(['id', 'content', 'created_at']);
});
return new Table(['ID', '内容', '发布时间'], $comments->toArray());
});
弹出模态框
和列展开功能类似,可以通过弹出模态框来显示更多内容
$grid->column('title', '标题')->modal('最新评论', function ($model) {
$comments = $model->comments()->take(10)->get()->map(function ($comment) {
return $comment->only(['id', 'content', 'created_at']);
});
return new Table(['ID', '内容', '发布时间'], $comments->toArray());
});
$grid->column('country_name','国别')->modal('国别',function(){
$cId = DB::table('ryh_bulkorder_nation')
->where('bulkcolor_id', '=', $this->id)
->pluck('country_id')->toArray();
$name = PubCountry::whereIn('id', $cId)->pluck('cname','ename');
return new Table(['英文','中文'],$name->toArray());
});