Laravel Backpack 5.x:仅单个CRUD隐藏软删除项的编辑按钮
解决单个CRUD控制器隐藏软删除项编辑按钮的方案
不用把修改后的按钮覆盖全局文件,只需要给目标控制器单独配置自定义按钮即可,步骤如下:
- 把你改好的
update.blade.php重命名,比如叫update_without_trashed.blade.php,放在resources/views/vendor/backpack/crud/buttons/目录下,避免影响全局默认按钮。 - 打开目标CRUD控制器,找到
setupListOperation方法,先移除默认的update按钮,再注册你自定义的按钮:
public function setupListOperation() { // 移除默认的编辑按钮 $this->crud->removeButton('update'); // 添加自定义的编辑按钮,指定视图路径 $this->crud->addButtonFromView('line', 'update', 'buttons.update_without_trashed', 'end'); }
这样配置后,只有这个控制器的列表页会使用加了!$entry->trashed()判断的编辑按钮,其他控制器依然沿用默认的update按钮,完全不会影响没有deleted_at字段的模型。
内容的提问来源于stack exchange,提问作者Liju
相关产品推荐
相关产品推荐

