我正在尝试打印包含记录的总列表,对于此列表,有些可能已连接到用户。活动项目来自同一类的另一个集合(活动集合)。我将遍历整个列表,并且需要检查每条记录是否存在于活动集合中。有那个功能吗?
目前,我将活动项目放在一个数组中,其中记录 id 作为数组键进行检查,这很有效,但我想知道是否有更好的方法来做到这一点?
$totalcollection = ORM::Factory('table')->find_all();
// user has an relation named 'activerecords', which will find the records connected
// to a user through a link table
$activecollection = $user->activerecords->find_all();
foreach( $totalcollection as $record ) {
$active = false;
// I'm looking for a function like this one. Does it exist?
$active = $activecollection->contains($record);
if($active) {
echo "<li class=\"active\">".$record->name."</li>";
} else {
echo "<li>".$record->name."</li>";
}
}
有任何想法吗?