我有一個「步驟」表,其中包含「id」和名爲「step」的步驟的文本。然後我有一個「客戶」表「ID」和其他客戶信息。最後,我有一個「customers_steps」連接表,其中包含「customer_id」和「step_id」。目標是要有一個步驟列表,並顯示哪些已完成。但我堅持......Datamapper ORM/CodeIgniter - 使用和顯示連接表
爲了確保我不會遺漏任何東西,在「客戶」的模式,我有
var $has_many = array ('step');
在「步」的模式,我有
var $has_many = array('customer');
現在,我正在循環步驟,然後循環遍歷客戶的步驟,以查看它們是否匹配...但是它有很多代碼,我知道必須有更快的方法,而且我只是想念它:
$c = new Customer();
$c->get_by_id(1);
$c->step->get();
$s = new Step();
$s->get();
foreach($s as $step)
{
foreach($c as $customer)
{
if($customer->step->id == $step->id)
{
$match = true;
}
}
if($match)
{
echo "match - " . $step->step;
}
else
{
echo $step->step;
}
}
這有效......但我能做些什麼來改善它?提前致謝。
非常感謝!我可能會繼續按照目前的方式進行操作,但我認爲可能存在我缺少的Datamapper方法。但是這回答了我的問題。再次感謝! – TerryMatula 2010-12-22 14:56:46