我有一个“步骤”表,其中包含“id”和名为“step”的步骤文本。然后我有一个带有“id”和其他客户信息的“客户”表。最后,我有一个带有“customer_id”和“step_id”的“customers_steps”连接表。目标是列出步骤,并显示已完成的步骤。但我被困住了...
为了确保我没有遗漏任何东西,在“客户”模型中,我有
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;
}
}
这行得通......但我能做些什么来让它变得更好?提前致谢。