首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >深度选择关联模型数据Cakephp 2.x

深度选择关联模型数据Cakephp 2.x
EN

Stack Overflow用户
提问于 2014-10-14 11:20:12
回答 1查看 26关注 0票数 0

我有这样一个模型结构:客户端->项目->房东->属性

财产归属于房东房东归属于项目项目归属于客户

在属性控制器中,我想要属于一个特定客户端的所有属性,我该怎么做呢?我尝试过使用containable,但它总是给我所有的属性,而不是那些与它们的外键相关的属性。

代码语言:javascript
复制
  $properties = $this->Property->find('all', array(
    'contain' => array(
        'Landlord' => array(
            'Project' => array(
                'conditions' => array(
                    'client_id' => $user['client_id']   // Passed parameter
                )
            ),
            'conditions' => array(
                'Landlord.project_id' => 'Project.Id'
            )
        )
      )
 ));

这不是在做任何事情,它甚至似乎忽略了我所犯的任何打字错误。我在这里做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2014-10-14 12:44:53

我用joins解决了这个问题这就是我想出来的。

代码语言:javascript
复制
  $joins = array(
           array('table'=>'projects', 
                 'alias' => 'Project',
                 'type'=>'inner',
                 'conditions'=> array(
                 'Project.client_id = '.$user['client_id']
           )),
           array('table'=>'landlords', 
                 'alias' => 'Landlord',
                 'type'=>'inner',
                 'conditions'=> array(
                 'Project.id = Landlord.project_id','Landlord.id = Property.landlord_id'
           )),

         );

        $properties = $this->Property->find('all',array('joins'=>$joins,'recursive'=>-1));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26352104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档