Cakephp 在单个视图中预填充多个多个表单


cakephp pre populate multiple multiple forms in single view

我对cakephp有一个问题。我搜索了整个网站,但没有找到合适的解决方案。

所以先让我们看看。预填充表单最适合与表单帮助程序配合使用:

$this->request->data = $this->Model->find();

上面的代码填充了表单,但是如果我们有两个具有两个模型名称的表单怎么办?

 $this->Form->create('Basic');

$this->Form->create('Personal');

在个人资料的视图上

class ProfileController extends Appcontroller{
   public function index(){
       $this->request->data = $this->Basic->find();
       $this->request->data = $this->Personal->find();
    }

}

此代码预先填写第二个表单而不是第一个表单,如果我删除第二行,它会填充第一个表单那么有什么解决方案可以在单个视图中预填充多个表单吗?

PHP不是魔法。您需要事先合并数据,或将其分配给子项:

$basic = $this->Basic->find('first');
$personal = $this->Personal->find('first');
$this->request->data['Basic'] = $basic['Basic'];
$this->request->data['Personal'] = $personal['Personal'];

会工作