- 60浏览
- 2023-08-01
例如: category 模型中 关联article模型
//分类关联文章一对多
public function article() {
return $this->hasMany('Article', 'categoryid', 'categoryid')->field('id,title_name,status');
}
获取各分类下的文章数量, 此时可以用withCount 方法进行关联统计
1, 使用默认统计属性名
a/ 不加过滤条件
$rslist = Category::withCount( 'article')->select([1,3,6]);
foreach( $rslist as $row){
echo '<pre>';print_r($row->article_count); //默认统计名以“关联方法名+_count”为名
}
/*结果: 5
3
2
*/
b/ 加过滤条件
$rslist = Category::withCount( [ 'article'=>function( $query){
$query->where('status',0);
}])->select([1,3,6]);
foreach( $rslist as $row){
echo '<pre>';print_r($row->article_count);
}
2, 使用自定义统计属性名
//自定义属性名 art_count
$rslist = Category::withCount(['article' => 'art_count'])->select([1, 3, 6]);
foreach( $rslist as $row){
echo '<pre>';print_r($row-> art_count);
}
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、本文由会员转载自互联网,如果您是文章原创作者,请联系本站注明您的版权信息。