【发布时间】:2013-09-04 18:33:32
【问题描述】:
我在 has_many-through 关系方面遇到了很多问题,但最后我找到了很好的例子here,它解决了我的大部分问题。但是,根据下面提供的代码,我有几个问题。
首先,代码:
$artists = ORM::factory('artist')->find_all();
foreach ( $artists as $artist )
{
foreach ( $artist->media->find_all() as $m )
{
echo $m->name;
}
}
1) 这个例子可能是控制器。如果我想将media 存储在$artists 中以发送一个变量来查看怎么办?是否可以将media 作为媒体属性存储在艺术家对象中? (我的意思是例如$artists[0]->media[0]->name)
2)没有这个循环是否可以完全加载$artists?
【问题讨论】:
-
为什么不在你的艺术家对象中创建一个名为
media($key = NULL)的函数并让它返回一个数组或单个对象?这将是简单的$artists[0]->media(0)->name,而$key被排除在整个数组之外,这样也可以轻松集成缓存。