Yii2-多表关联-分页问题:第1页总显示1条记录,正确应是4条

xmlife 2015-06-11 06:05:42
1. 在模型中写如下代码 /models/ProContent.php



public function proContentPagination($pageSize=null)
{
$query = ProContent::find();
$pagination = new Pagination([
'defaultPageSize' => $pageSize,
'totalCount' => $query->count(),
]);

$proSets = $query->joinWith('proAttachmentOne')
->offset($pagination->offset)
->limit($pagination->limit)->all();
return $proSets;
}


public function getProAttachmentOne()
{
return $this->hasOne(ProAttachment::className(), ['ProID' => 'id']);
}




2.在控制器中调用代码如下(/controllers/IndexController.php)


public function actionIndex()
{
$pro = new \app\models\ProContent();
$proSets = $pro->proContentPagination(4);
var_dump($proSets); exit();
}


调试:proContent符合条件的记录有7条,但查询结果总返回一条记录
正确结果 第1页应显示4条记录,

如果去掉关联:>joinWith('proAttachmentOne'),则结果正确,
请问这是什么情况?


...全文
437 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
太久 2015-06-12
  • 打赏
  • 举报
回复
limit 限制在 >joinWith('proAttachmentOne') 上面了 ? 没用过yii2
xmlife 2015-06-12
  • 打赏
  • 举报
回复
期待大神出来解答

4,251

社区成员

发帖
与我相关
我的任务
社区描述
国内外优秀PHP框架讨论学习
社区管理员
  • Framework
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧