绑定多个模型 Cakephp

2021-12-21 00:00:00 php cakephp cakephp-1.3 cakephp-model

我试图在cakephp中绑定3个模型,关系如下

I am trying to bind 3 models in cakephp.The relation is as follows

Member hasMany Member_Organization Member_Organisations 属于组织

Member hasMany Member_Organaization Member_Organisations belongs to Organaization

我尝试使用

$this->Member->find('all',conditions)

$this->Member->find('all',conditions)

它只向我显示与 hasMany 关联相关的数据.我知道会员模型与组织模型没有直接关系.但是我们该怎么做呢?我的代码如下:

it just show me only data upto hasMany association. I understand that the Member model is not related directly to the organization one. but how can we do it? My code is as follows:

$this->Member->bindModel(
               array(
                 'hasMany'=>array(
                     'NpoMember' =>array(
                      'className' => 'NpoMember',
                      'foreignKey' => 'member_id',
                      'conditions' => array('NpoMember.status' => 'Active'),
                  )         
               )
            )
        ); 
        $this->NpoMember->bindModel(
               array(
                 'belongsTo'=>array(
                     'Npo'=>array(
                      'className' => 'Npo',
                      'foreignKey' => 'npo_id',
                      'conditions' => array('Npo.status' => 'Active')
                    )        
               )
            )
        ); 
        $userData  = $this->Member->find('first',array('conditions'=>array('Member.email'=>$userEmail,'Member.password'=>$passWord,'Member.status'=>'Active')));

我发现这个网站非常有帮助.谢谢并恭祝安康喜满树夏尔马

I found this site to be very helpful. Thanks and Regards Himanshu Sharma

推荐答案

使用 recursive cakephp 功能来达到这种目的.

Use recursive the cakephp functionality for this type of purpose.

在您的控制器中:$this->Member->recursive = 2; 在查找查询之前使用它.

In your controller: $this->Member->recursive = 2; use this before your find query.

参考:http://book.cakephp.org/view/1063/recursive

相关文章