【发布时间】:2013-10-10 17:15:13
【问题描述】:
CakePHP 我正在使用可包含的行为,但我怀疑是否要停止来自中间模型的数据。
假设我有这个结构
Song -> Tracklist -> Album
因此,当我将 Containable 行为放在 Song Model 上时,它会获取带有所需字段的专辑数据。但在每次调用中,它也会获取中间模型 Tracklist 的全部数据。
我的可收容行为是这样的。
$contain = array('Tracklist'=>array('Album'=>array('id','name')));
$this-Song->find('first', array('contain'=>$contain));
像这样。我的数据是这样的
[Tracklist] => Array
(
[0] => Array
(
[id] => 50
[album_id] => 229
[song_id] => 38
[video_link] =>
[status] => 0
[featured] => 0
[user_id] =>
[created] =>
[modified_by] =>
[modified] =>
[Album] => Array
(
[name] => Marasim
[slug] => marasim
)
)
[1] => Array
(
[id] => 2748
[album_id] => 489
[song_id] => 38
[video_link] =>
[status] => 1
[featured] => 0
[user_id] =>
[created] => 2013-10-09 17:58:53
[modified_by] =>
[modified] => 2013-10-09 17:58:53
[Album] => Array
(
[name] => Dummy Album
[slug] => dummy-album
)
)
)
[2] => Array
(
[id] => 2749
[album_id] => 489
[song_id] => 38
[video_link] =>
[status] => 1
[featured] => 0
[user_id] =>
[created] => 2013-10-09 17:59:42
[modified_by] =>
[modified] => 2013-10-09 17:59:42
[Album] => Array
(
[name] => Dummy Album
[slug] => dummy-album
)
)
)
我只想限制来自中间模型的数据。这可能吗?
【问题讨论】:
-
我有同样的问题......希望有人有魔法阻止中间模型被获取。 :(
-
你不想检索相册数据,对吧?
-
@Moyed:我不想检索中间模型意味着我的数据应该在
Tracklist->0->Album->AlbumData的路上。像这样.. 我应该怎么做才能从 Tracklist 中获取特定数据,或者从 Tracklist 中获取任何数据,就像这样 (Tracklist->0('id', 'album_id')->Album->AlbumData)。
标签: cakephp cakephp-2.3