我的问题是,当我拨打$ data时,我无法检索评论,它会像这样返回,为什么评论不会返回?
Array(
[0] => Array
(
[Event] => Array
(
[id] => 1
[url_id] => 22cbb58298af0fe62284324ccc020023
[name] => 高尾山ハイキング
[date] => 2017-05-06 00:00:00
[memo] => 行こうぜ
[is_available] => 1
[created] => 2017-05-03 21:15:30
[modified] => 2017-05-03 21:15:30
)
[Comment] => Array
(
)
))
这是事件控制器和事件有很多评论,顺便说一下 已在Model
完成一些设置
$data = $this->Event->find('all',[
'conditions' => [
'Event.url_id' => $eventURL
],
'contain' =>[
'Comment'=>[
'conditions' => ['Comment.event_id' =>$eventURL],
],
],
]);
答案 0 :(得分:1)
您不必在contain
密钥中手动添加foreign_key。
如果您的模型设置正确且hasMany
表中有Event
Comment
条记录,那么这应该可以为您提供所期望的内容。
$data = $this->Event->find('all', [
'conditions' => [
'Event.url_id' => $eventURL
],
'contain' =>[
'Comment'
]
]);
如果您的数据库中有Comment
event_id
1
,您应该得到它。
如果不这样做,请设置Configure::write('debug', 2)
并检查SQL调试输出,生成什么查询。