dcat 详情页怎么以弹窗模式显示?

dcat 详情页怎么以弹窗模式显示?

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 2

我是这样弄的,创建下面的自定义行操作,然后加载这个操作就可以了,需要把详情方法改成 public (如有更好的办法也请告知)

<?php

namespace App\Admin\Actions\Grid;

use App\Admin\Renderable\DetailRenderable;
use Dcat\Admin\Grid\RowAction;
use Dcat\Admin\Widgets\Modal;
use Illuminate\Support\Arr;
use Illuminate\Support\Facades\Route;


class Detail extends RowAction
{
    /**
     * @return string
     */
    protected $title = '详情';

    public function render()
    {
        // 实例化表单类并传递自定义参数
        $show = DetailRenderable::make(['id' => $this->getKey(), 'controller' => Arr::first(explode('@', Route::current()->getActionName()))]);

        return Modal::make()
            ->lg()
            ->body($show)
            ->button('<a href="javascript:void(0)"><i class="feather icon-eye"> ' . $this->title . '</i></a>');
    }
}

<?php

namespace App\Admin\Renderable;

use Dcat\Admin\Support\LazyRenderable;

class DetailRenderable extends LazyRenderable
{
    public function render()
    {
        return (new $this->payload['controller'])->detail($this->payload['id']);
    }
}


1年前 评论
calvinr (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!