绑定多个模型Cakephp [英] Binding multiple models Cakephp

查看:135
本文介绍了绑定多个模型Cakephp的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图在cakephp.绑定3个模型。关系如下

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


会员hasMany Member_Organaization Member_Organisations属于
组织

Member hasMany Member_Organaization Member_Organisations belongs to Organaization

我尝试使用


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

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

它只显示数据upto 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')));

我发现这个网站非常有帮助。
感谢和回报
Himanshu Sharma

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

推荐答案

使用递归 cacephp这种类型的目的功能。

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

这篇关于绑定多个模型Cakephp的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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