讨论 技术讨论 AdminCRUDBuilder 要做关联查询 应该如何弄呢?

AdminCRUDBuilder 要做关联查询 应该如何弄呢?

黑色幽默 发表于    阅读:41    回复:3

问题描述:

AdminCRUDBuilder 要做关联查询 应该如何弄呢? 以下代码不显示

protected function crud(AdminCRUDBuilder $builder)
{
   $show_columns = [
       "member_visit.*",
       "member_user.username",
       "member_user.phone",
   ];

   $mb = $builder->init('member_visit');

   $mb->table_columns($show_columns);

   $mb->gridFilterJoinAdd('left', 'member_user', 'member_user.id', '=', 'member_visit.member_id');

   $mb->field(function ($builder) {
       $builder->id('id', 'ID');
       $builder->text('member_id', '会员ID');
       $builder->text('member_user.username', '用户名名');
       $builder->text('member_user.phone', '手机号');

       $builder->text('page_title', '页面');
       $builder->text('url', 'url');
       $builder->datetime('created_at', '访问时间')->sortable(true);
   });

   $mb->gridFilter(function (GridFilter $filter) {
       $filter->range('created_at', '访问时间')->datetime();
   });
   $mb->canShow(false);
   $mb->disableCUD();

}

评论

这时候不要使用 member_visit 这样的快捷字符串模型,需要创建一个 MemberVisit 和 MemberUser 两个 Model,随后将关联关系声明在 Model 中,使用 $builder->init(MemberVisit::with('memberUser'));

 

@ModStart: 我用的是老版本,这样写 显示报错

class_exists() expects parameter 1 to be string, object given


 

这个可以微信加我远程看一下

 
1
我来评论
QQ
微信
客服