无论如何我对sql并不太好,但是我无法让特定的查询工作。
我有档案和图像作为表格。它们通过archives_images表连接。我有我想要的存档的$ id,我正在尝试对我在archive_id旁边的archives_images表中有记录的图像进行分页。
我正在尝试的代码(这是最正确的代码 - 我已经尝试了一段时间了)
$this->Paginator->settings = array(
'conditions' => array(
'Image.user_id'=>$this->Auth->user('id'),
'ArchivesImage.archive_id'=>$id
),
'limit' => 48
);
但很明显,这给了我一个错误,因为'where子句'中没有'ArchivesImage.archive_id'
任何人都可以帮助我吗?
答案 0 :(得分:0)
试试这个
$this->Paginator->settings = array(
'joins'=>array(
array(
'table'=>'archives_images',
'Alias'=>'ArchivesImage',
'type'=> 'INNER',
'conditions'=>array(
'ArchivesImage.archive_id=Archive.id'
)
),
array(
'table'=>'images',
'Alias'=>'Image',
'type'=> 'INNER',
'conditions'=>array(
'Image.id=ArchivesImage.image_id'
)
)
),
'conditions' => array(
'Image.user_id'=>$this->Auth->user('id')
),
'limit' => 48,
'recursive'=>-1
);