尝试一次编辑多个记录,saveAll无法正常工作

时间:2011-05-29 12:08:25

标签: cakephp

我正在将多个Widgets和相关的WidgetsItems保存到菜单中,我的工作正常。

问题是,我的编辑功能不起作用。我知道数据数组结构需要如下所示,因为它首先正确地保存了我的数据:

Array (
[Widget] => Array
    (
        [23] => Array
            (
                [title] => Cocktails
                [id] => 23
                [WidgetsItem] => Array
                    (
                        [147] => Array
                            (
                                [item] => Martini: Noilly Pratt, Ginor Vodka
                                [price] => 24
                                [id] => 147
                            )
                        [148] => Array
                            (
                                [item] => Negroni: Campari, Gin, Sweet Vermouth
                                [price] => 16
                                [id] => 148
                            )
                    )
            )

使用以下控制器代码:

foreach($this->data['Widget'] as $widgetKey => $widget) : 
                $widgetData = array(
                    'title' => $widget['title'],
                    'id' => $widget['id']
                );
                $saveableWidget = Set::insert($widget, 'Widget', $widgetData);
                if($this->Widget->saveAll($saveableWidget)) : $saveSuccess = true; endif;
            endforeach;

从初始保存功能复制并粘贴,然后进行一些修改以进行编辑。相反,它创建新条目,而不是编辑它们。我知道这与ID有关,但它只是没有保存。我究竟做错了什么?

请帮助,我觉得我非常接近近乎完成的产品。

谢谢,

〜哈雷

0 个答案:

没有答案