0

我有 2 个模型需要保存到。在这种情况下,我不需要 cakePHP 来 saveAll(),但想手动保存内容。

在我看来,我将 formHelper 设置为“Model2.fieldname”,并且在发布时,如果我执行 pr(),则会使用 [Model2] 与字段创建关联数组。

我在控制器中的代码:

 if($this->request->is("post") {
      if($this->Model1->save($this->request->data) {
           if($this->Model1->Model2->save($this->request->data) {
                $this->Session->setFlash("Success");
           }
      }
 }

它继续并存储模型 1 的数据,但在模型 2 上失败。它在表中创建了一条空记录,因为有一个已创建和修改的表字段,但其余字段为空白。它也未能通过模型​​ 2 的验证(因此它不进行任何验证。)

Model1 有一个 Model2

我以前没有这样做过,所以我确信我做错了什么,所以如果有人可以帮助提前感谢:)

4

1 回答 1

0

你可以使用 cakephp 的saveAssociated()方法:

$this->Model1->saveAssociated($this->request->data);

阅读saveAssociated()

于 2012-05-17T10:47:02.760 回答