Thinkphp5 模型关联中关于设置表别名的问题


在示例Portal应用中,碰到设置表别名的问题:

 /**
 * 关联分类表
 */
 public function categories()
 {
      return $this->belongsToMany('PortalCategoryModel', 'portal_category_post', 'category_id', 'post_id')->setAlias(['portal_category_post'=>'d']);
  }

想设置一个中间表的别名,为Controller中查询文章列表时不用join这么复杂的语句,加入setAlias后,打开文章管理时提示:

[0] Exception in Query.php line 94

method not exist:think\db\Query->setAlias

可是按开发手册上写的是可以支持设置别名的呀,

belongsToMany方法的参数如下:

belongsToMany('关联模型名','中间表名','外键名','当前模型关联键名',['模型别名定义']);

是模型支持别名,表名不可以支持别名吗?如果我想对表名设置别名,在模型定义里可以设置吗?

有大牛知道怎么解决吗?

打赏

评论

暂时关闭,稍后恢复~
文档请看10遍以上!有问题可加QQ群!
发表话题

源素材推荐

提问必知

0.话题发布后没及时显示,请联系官方QQ群管理;
1.话题支持代码,qq截屏直接粘贴,和QQ群一样;
2.问题描述清,比如服务器版本,程序版本;
3.能上代码,就不用文字;
4.把问题发到话题后再发QQ群;
5.如果感觉回复者解答的不错,可以发红包!
6.多帮助别人也是对自己的锻炼!
7.付费讨论中只有提问者和付费用户才可以查看回复

积分规则

1.评论积分+1;每天最多10次奖励
2.发布话题积分+1;每天最多5次奖励
3.垃圾评论积分-500;
4.黄色,暴力,违反我国法律评论直接封号


ThinkCMF 8.0.0发布啦!祝大家节日快乐! 立即体验!