我想隐藏laravel-backpack中的按钮(在列表视图中)只有在某个条件成立时才会隐藏。
这个条件,我想用我的一个数据来做。
例如,如果文章的状态为“已发布”,请删除编辑按钮。
但我无法在ItemCrudController中访问此数据。
我想做什么:
public function setup()
{
if(myData == 'published'){
$this->crud->removeAllButtons();
}
}
你知道怎么做吗?非常感谢你!
答案 0 :(得分:0)
由于您正在使用刀片视图部分,因此可以这样尝试。
@if(myData =='published')
{{$this->crud->removeAllButtons();}}
@else
{{$this->crud->displayAllButtons();}}
@endif
答案 1 :(得分:0)
我认为最干净的方法是创建一些自定义按钮并使用它们而不是标准按钮。它应该像在resources / views / vendor / backpack / crud / buttons文件夹中创建一些刀片文件一样简单: - edit_if_published.blade.php - delete_if_published.blade.php
文件可以只包含条件,并包含供应商文件夹中的标准文件。
然后您可以删除旧的并在setup()方法中使用新的:https://laravel-backpack.readme.io/docs/crud-buttons
希望它有所帮助。