以HABTM关系更新数据

时间:2012-08-31 17:00:08

标签: cakephp cakephp-2.0

我在HABTM关系中有两个模型 Firma Znacka ,形成 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");

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

  • 如果用户输入的 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。谢谢你的帮助。

0 个答案:

没有答案