0

我有两个模型FirmaZnacka在 HABTM 关系中形成FirmaZnacka。我有一个带有 javascript 自动完成功能的表单,如下所示:

echo $this->Form->input("Znacka.1.id");
echo $this->Form->input("Znacka.1.name");
echo $this->Form->input("Znacka.2.id");
echo $this->Form->input("Znacka.2.name");

当用户提交表单时,我需要保存/更新/创建数据来归档:

  • 如果用户输入的Znacka名称不存在,则创建它(如果存在,不要创建新的!)
  • 处理关系表记录

提交的数据如下所示$this->request->data

array(
    'Znacka' => array(
        0 => array(
          'id' => string '',
          'nazov' => string 'First'),
        1 => array(
          'id' => string '',
          'nazov' => string 'Second')
     )
)

Firma的 id是已知的、静态的并由设置$this->Firma->id = $id;。代码在 FirmyController 中运行,该控制器默认导入了 Firma 模型。我不仅使用表单来创建新数据,而且还更新现有数据。

我试图从 The Cookbook 中找出这一点,但没有结果。我尝试使用保存它$this->Firma->saveAssociated($this->request->data),还尝试了其他一些保存功能。

通过查看每个 Znacka 的名称等,我知道有一个蛮力解决方案,但我正在寻找一些没有几十行代码的不错的 CakePHP 解决方案。

我正在使用 CakePHP 2.0。谢谢你的帮助。

4

0 回答 0