laravel-admin 關閉(新增,刪除,批量操作,導入導出,修改)按鈕


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

        //表單bottom
        $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();
        });
獲取當前行數據

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) {
    // append一個操作
    $actions->append('<a href=""><i class="fa fa-eye"></i></a>');

    // prepend一個操作
    $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
{
    /**
     * 返回字段標題
     * 
     * @return string
     */
    public function title()
    {
        return 'Check row';
    }

    /**
     * 添加JS
     * 
     * @return string
     */
    protected function script()
    {
        return <<<JS
$('.grid-check-row').on('click', function () {

    // Your code.
    console.log($(this).data('id'));

});
JS;
    }

    public function html()
    {
        // 獲取當前行數據ID
        $id = $this->getKey();

        // 獲取當前行數據的用戶名
        $username = $this->row->username;

        // 這里需要添加一個class, 和上面script方法對應
        $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://learnku.com/docs/dcat-admin/2.x/use-and-extension-of-rows/8092


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM