为字段定义showUseComponent(true)
此属性时,在详情页面中将不会显示标题
只需要在字段集合中加入以下字段的代码
<?php
TableField::init('childList','','所有宠物')
->generateColumn(false)//不自动生成数据库表字段
->listShow(false)//不在列表中显示
->editShow(false)//不在编辑中显示
->fields(FieldCollection::make())//性能问题,先设置为空的字段集合就可
->showUseComponent(true)//不展示标题部分,值的部分即是当前字段的全部展示
//字段事件(setShowInfoBeforeDo 在详情页面显示时会执行)
->pushFieldDo((new FieldDo())->setShowInfoBeforeDo(function (BaseModel $info,?BaseModel $base,ModelField $field){
$childModel=new Pets();
//设置显示的字段
$field->fields($childModel->fields());
//设置显示的宠物列表
$info[$field->name()]=$childModel->where('base_id',$info->id)->select()->toJson();
}))