在处理 HABTM 时,我很难理解 Hash::extract 的语法。
我有从 find() 返回的数据,如下所示:
array(
(int) 0 => array(
'EventsGroup' => array(
'id' => '34',
'event_id' => '5',
'group_id' => '1'
)
),
(int) 1 => array(
'EventsGroup' => array(
'id' => '29',
'event_id' => '2',
'group_id' => '1'
)
)
)
我试图得到一个看起来像这样的数组:array(x,y,z)
其中 x,y,z 是event_id
's.
Cake 文档的示例如下所示:
$users = $this->User->find("all");
$results = Hash::extract($users, '{n}.User.id');
基于此,我尝试了:
$eventsGroups = $this->EventsGroup->findAllByGroupId($groupid);
$secEvents = Hash::extract($eventsGroups, '{n}.{EventsGroup}.event_id' );
$secEvents2 = Hash::extract($eventsGroups, '{n}.EventsGroup.event_id' );
$secEvents3 = Hash::extract($eventsGroups, '{n}.[text=EventsGroup].event_id);
这些都没有奏效。
我找到了一种不使用 Hash::extract 来获得我想要的东西的方法,但我想使用它,因为其他一些方法在以后对我有用。
任何帮助或指示将不胜感激!
谢谢