在kid模型中,我在HABTM关系下面定义了这一点。
public $hasAndBelongsToMany = array(
'Pics' => array(
'className' => 'Pic',
'joinTable' => 'pics_kids',
'foreignKey' => 'kid_id',
'associationForeignKey' => 'pic_id'
)
);图片表存储图片的详细信息,如评论、pic_url和日期,pics_kids表中有与图片和孩子相关的pic_id和kid_id id。如果我必须根据kid_id和date(图片表格中的图片日期)检索记录,如何检索?
$kid_pics=$this->kid->find('all', array(
'conditions' => array(
'kid.id' => 1,
'Pic.date' => '26/07/2014'
)
));如果我使用上面查询,我得到的错误是where claue中没有列Pic.date。
发布于 2014-07-26 18:43:38
为您的HATBM关系动态添加条件:
$this->Kid->hasAndBelongsToMany['Pic']['conditions'] = array(
'Pic.date' => '26/07/2014'
) ;
$kid_pics = $this->Kid->real(null, 1) ;发布于 2014-07-26 19:07:45
您可以使用内置的可包含行为。
$this->Kid->Behaviors->load('Containable');
$kid_pics = $this->Kid->find('all', array(
'conditions' => array(
'Kid.id' => 1
),
'contain' => array(
'Pic' => array(
'conditions' => array(
'Pic.date' => '26/07/2014'
)
)
)
));https://stackoverflow.com/questions/24968140
复制相似问题