【问题标题】:Saving multiple HABTM models at the same time同时保存多个HABTM模型
【发布时间】:2011-09-18 18:08:26
【问题描述】:

因为我找不到很多关于同时保存两个具有HABTM 关系的模型的信息

我有一个订阅表格,可以在线订阅儿童。父母可以同时输入多个孩子和多个父母。所以一个 JS 可以添加更多的文本框并使它们变得有效(Model.number.field

  1. 我想验证孩子和经理(不能使用父模型名称,所以在这种情况下,父母 = 经理):

    if($this->Child->saveAll($this->data['Child'], array('validate' => 'only'))
        && ($this->Manager->saveAll($this->data['Manager'], array('validate' => 'only')))
    )
    {
        debug('form is valid!');
    }
    

    此代码仅在只有 1 个孩子和 1 个经理(=父母)时有效。

  2. 如何同时保存这 2 个具有 HABTM 关系的模型?

这是一个调试值$this->data:http://pastebin.com/m6dtBzga

【问题讨论】:

    标签: php arrays cakephp has-and-belongs-to-many


    【解决方案1】:

    来自文档:

    为了保存单个模型的多条记录,$data 需要是一个数字索引的记录数组,如下所示:

    Array
    (
        [Article] => Array(
                [0] => Array
                    (
                                [title] => title 1
                            )
                [1] => Array
                    (
                                [title] => title 2
                            )
                    )
    )
    

    保存上述 $data 数组的命令如下所示:

    $this->Article->saveAll($data);
    

    http://book.cakephp.org/view/1031/Saving-Your-Data

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-07
      • 1970-01-01
      • 1970-01-01
      • 2016-06-22
      • 2011-08-12
      • 1970-01-01
      相关资源
      最近更新 更多