含有HABTM的可控行为cakephp

时间:2014-07-05 10:38:37

标签: cakephp cakephp-2.0 cakephp-2.3

我正在尝试使用cakephp的可包含行为来获取数据。

我的模型是如何关联的:

 A => HABTM <= B
 B => HABTM < C

我需要的结果是数组结构:

array(
        [A] => array(),
        [B] => array(
            [C] => array()
        )
 )

我已经达到了获取数组:

 array(
        [A] => array(),
        [B] => array()
 )

我已尝试过所需的数组结果,但没有得到解决方案。

我正在尝试什么查询:

 $this->A->Behaviors->load('Containable');
    $contain = array('contain'=>array(
                'B' => array(
                    'C'
                )
          )
    );

While trying the query , i am getting output as follows:

array(
        [A] => array(),
        [B] => array(
            [C] => array()
        )
 )

但模型&#39; C&#39;数据是空的

有谁知道怎么做?

1 个答案:

答案 0 :(得分:-1)

嗯,你从来没有定义你的表如何相互连接,至少C =&gt;乙

e.g。

$this->A->Behaviors->load('Containable');
$contain = array('contain'=>array(
            'B' => array(
                'C' => array(
                    'conditions' => array('B.name' => 'C.name'),
                )
            )
      )
);

这将检索A,B和C表,其中B.name == C.name。

请简要介绍here