fastadmin 的多表联合查询,仅支持A-B,A-C,不支持 A-B-C 查询。两张表及以上关联查询时,先在model层写方法
例如,主表 user,关联 apply_project表和user_group表,在user model层写下如下两个方法。其中belongsto后,第一个参数为表名,第二个参数为user表内 关联字段,第三个参数为要关联的表字段
public function apply() { return $this->belongsto("ApplyProject",'id','userid',[],'LEFT')->setEagerlyType(0); } public function group() { return $this->belongsTo('UserGroup', 'user_group', 'id', [], 'LEFT')->setEagerlyType(0); }
在控制器内,利用with连接
$list = $this->model->with(['group','apply'])->where($where)->select();
with 内不写关联表名,写在model定义的方法名。多个表 用 [ ] 。
查询返回的值,两个表 的数据是以数据形式包含在内,键值为定义的方法名,例中返回格式如图
在前端,就是文件则是
{field: 'apply.batch', title: __('报考')},
————————————————
版权声明:本文为CSDN博主「灰色的刀刀」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/huisededaodao/article/details/120737716