我对codeigniter上的datamapper有问题,我想从具有关系的3个表中删除所有记录。像这样:
$c = new Camp();
$c->where('id', $this->input->post('id'))->get();
$cf = new CF();
$cf->where('camp_id', $this->input->post('id'))->get();
$p = new Pro();
$p->where('camp_id', $this->input->post('id'))->get();
$c->delete(array($cf, $p->all));
这给我带来了一个问题,但是如果我单独进行操作,请在where之后添加delete或delete_all:
$c = new Camp();
$c->where('id', $this->input->post('id'))->get();
$c->delete();
$cf = new CF();
$cf->where('camp_id', $this->input->post('id'))->get();
$cf->delete();
$p = new Pro();
$p->where('camp_id', $this->input->post('id'))->get();
$p->delete_all();
它不会从表中删除记录,它只是将Camp_id字段(比记录多)设置为null,在这种情况下,在p-> delete_all中,我想从表中删除。我可以使用codeigniter,但必须与datamapper一起使用。有人知道怎么做吗?
谢谢。