分组里面包含cakephp [英] Group By within contain cakephp

查看:53
本文介绍了分组里面包含cakephp的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Hellow,我想在cakephp中的包含内使用分组方式。在以下情况下,我只想在organizationUser数组内采用唯一的组织。.

Hellow , I want to use group by within contain in cakephp. In the following case i want to take only distinct organization within organizationUser array..

         $options = array(
        'conditions' => array('User.' .$this->User->primaryKey => $userId), 
        'contain' => array(
                        'OrganizationUser'=>array(
                            'conditions'=>['status'=>3],
                            'group'=> array( 'OrganizationUser.organization_id')),
                        'OrganizationUser.Organization',
                        'OrganizationUser.Organization.Noticeboard',
                        'OrganizationUser.Organization.Newsboard',
                        'OrganizationUser.Organization.Noticeboard.Branch',
                    ),
        'page'=>$page,
        'limit'=>$limit
        );



        $org = $this->User->find('all', $options);

但这会引发类似未找到列的错误,并且 conditions在OrganizationUser中运行良好但是'group'无法正常工作。我使用的是Cakephp版本2。谢谢。

But this is throwing error like 'Column not found', and 'conditions' is working fine within OrganizationUser but 'group' not working.I am using cakephp version 2.Thanks in advance.

推荐答案

我不认为cakephp 2 +提供一些类似的操作,以使容器中的字段与众不同。因此最好尝试以下方法。
替换:

I don't think cakephp 2+ offer something like you are doing to make field distinct within contain. So better to try following.. Replace :

'group'=> array( 'OrganizationUser.organization_id')

By

'fields'=> array( 'DISTINCT OrganizationUser.organization_id')

可能对您有用。

这篇关于分组里面包含cakephp的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆