CakePHP数据库如何工作?

|                                                                                                                       
已邀请:
您可以通过多种方式之一在控制器中引用模型。两种常见方式是在控制器顶部使用uses变量:
var $uses = array(\'User\',\'Image\');
或者,您可以将其内联到函数中:
$this->loadModel(\'Image\');
$this->Image->find(\'all\'); ...
另外,如果您有通过前键链接的模型,则甚至可以这样称呼:
$this->User->Image->find(\'all\');
一旦掌握了CakePHP如何构造事物的窍门,它就会非常清楚。 因此,对于问题中的sql语句,您可以从users控制器中执行以下操作:
class UsersController extends AppController {
   var $name = \'Users\';
   var $uses = array(\'User\',\'Image\',\'Comments\');

   function {my_function_name}() {
       $this->Images->recursive = 1;
       $images = $this->Image->find(\'all\');
   }
}
现在,只要您在模型中的关系正确,则递归函数将构建图像数组并附加所有注释。
array(
   [Image] => array(
        image data,
        [comments] => array(
            [0] comment data,
            [1] comment data,
            [2] ...
        )
    )
)
我希望至少能将您推向正确的方向。编码愉快!     

要回复问题请先登录注册