Copy Highlighter-hljs
model-grid 默认有四个行操作编辑、快捷编辑、删除和详情,可以通过下面的方式关闭它们:
$grid->actions(function ($actions) {
$actions->disableDelete();
$actions->disableEdit();
$actions->disableQuickEdit();
$actions->disableView();
}
$grid->disableDeleteButton();
$grid->disableEditButton();
$grid->disableQuickEditButton();
$grid->disableViewButton();
$grid->disableRowSelector();
$grid->disableActions();
$grid->disableCreation();
$grid->tools(function ($tools) {
$tools->batch(function ($batch) {
$batch->disableDelete();
});
});
$form
$form->disableReset();
$form->disableEditingCheck();
$form->disableViewCheck();
$form->tools(function (Form\Tools $tools) {
$tools->disableDelete();
$tools->disableView();
});
$grid
$grid->disableExport();
$grid->disableCreation();
$grid->actions(function (Grid\Displayers\Actions $actions) {
$actions->disableDelete();
$actions->disableEdit();
$resDemand = Demand::find($actions->getKey());
$edit_html='';
if($resDemand->status==1){
$edit_html.="<span class='mb-5'><a class='grid-row-pass' title='通过' data-id='{$actions->getKey()}'><i class='glyphicon glyphicon-ok'></i></a></span>";
$actions->append($edit_html);
});
$show
$show->panel()->tools(function ($tools){
$tools->disableDelete();
$tools->disableEdit();
});
Copy Highlighter-hljs
获取当前行数据
use Dcat\Admin\Grid;
$grid->actions(function (Grid\Displayers\Actions $actions) {
$rowArray = $actions->row->toArray();
$email = $actions->row->email;
$id = $actions->getKey();
});
添加自定义按钮
use Dcat\Admin\Grid;
$grid->actions(function (Grid\Displayers\Actions $actions) {
$actions->append('<a href=""><i class="fa fa-eye"></i></a>');
$actions->prepend('<a href=""><i class="fa fa-paper-plane"></i></a>');
}
添加复杂操作按钮
php artisan admin:action
<?php
namespace App\Admin\Extensions;
use Dcat\Admin\Grid\RowAction;
class CheckRow extends RowAction
{
public function title()
{
return 'Check row';
}
protected function script()
{
return <<<JS
$('.grid-check-row').on('click', function () {
// Your code.
console.log($(this).data('id'));
});
JS;
}
public function html()
{
$id = $this->getKey();
$username = $this->row->username;
$this->setHtmlAttribute(['data-id' => $id, 'email' => $username, 'class' => 'grid-check-row']);
return parent::html();
}
}
然后添加操作:
$grid->actions(new CheckRow());
$grid->actions(function (Grid\Displayers\Actions $actions) {
$actions->append(new CheckRow());
}
https:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?