laravel-admin 模型详情关联显示


模型详情为

class CheckLog extends Model
{
    use SoftDeletes;
    protected $table = 'xf_check_log';
    protected $dates = ['deleted_at'];

    // 关联设备详情表
    public function equipmentdetail()
    {
        return $this->belongsTo(EquipmentDetail::class, 'edid', 'id');
    }

}

 一个设备检查记录的model  关联了设备详情的model   目的就是在checklog的详情页面中 不显示edid 而是关联显示出设备的名称

 

在表格列表的展示中 可以这方便的使用关联展示

$grid->column('equipmentdetail.name', __('设备名'));

 

但是在详情中 这种.连接的方法却行不通了 此时文档中介绍的方法又很复杂 这里给出一个简单的方法

$show = new Show(CheckLog::findOrFail($id));

        $show->field('equipmentdetail', __('设备名'))->as(function ($content) {
            return $content->name;
        });

这里CheckLog::findOrFail($id)是查询出来的数据

回调中的$content相当于CheckLog::findOrFail($id)->equipment

这样就能正常的显示设备名称了


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM