如何在 laravel 的背包中有条件地显示列
How to show a column conditionally in backpack for laravel
我需要根据 laravel 背包中的用户权限,有条件地显示一列。
只需要为管理员显示 customer
和 total
列。
在文档中我找到了visibleInShow
,但不知道如何使用它。
注意:我需要使用 header 使该列不可见。
CRUD::column('user')->label('Customer');
CRUD::modifyColumn('user', [
'name' => 'user',
'type' => 'closure',
]);
实际上 visibleInShow
主要用于特殊情况,例如“隐藏列表中的列,但仍将其导出”或“隐藏列表中的列,但仍允许对其进行搜索”。
根据你的问题,这就是我有条件地隐藏列的方式:
protected function setupListOperation()
{
// Other columns setup (skipped)
if (Auth::user()->isAdmin) {
CRUD::column('user')->label('Customer');
}
// More columns setup (skipped)
}
或者说简单点:只在满足条件时才添加列。
无需添加列然后添加更多逻辑来隐藏它。
我需要根据 laravel 背包中的用户权限,有条件地显示一列。
只需要为管理员显示 customer
和 total
列。
在文档中我找到了visibleInShow
,但不知道如何使用它。
注意:我需要使用 header 使该列不可见。
CRUD::column('user')->label('Customer');
CRUD::modifyColumn('user', [
'name' => 'user',
'type' => 'closure',
]);
实际上 visibleInShow
主要用于特殊情况,例如“隐藏列表中的列,但仍将其导出”或“隐藏列表中的列,但仍允许对其进行搜索”。
根据你的问题,这就是我有条件地隐藏列的方式:
protected function setupListOperation()
{
// Other columns setup (skipped)
if (Auth::user()->isAdmin) {
CRUD::column('user')->label('Customer');
}
// More columns setup (skipped)
}
或者说简单点:只在满足条件时才添加列。 无需添加列然后添加更多逻辑来隐藏它。