Попытка редактировать несколько записей одновременно, сохранить все не работает - PullRequest
1 голос
/ 29 мая 2011

Я сохраняю несколько виджетов и связанных элементов виджетов в меню, которое у меня работает нормально.

Проблема в том, что моя функция редактирования не работает. Я понимаю, что структура массива данных должна быть следующей, так как именно она в первую очередь правильно сохраняет мои данные:

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;

Который копируется и вставляется из начальной функции сохранения, затем немного изменяется для редактирования. Вместо этого он создает новые записи, а не редактирует их. Я знаю, что это связано с идентификаторами, но это не сохранение. Что я делаю неправильно?

Пожалуйста, помогите, я чувствую, что я очень близок к почти готовой продукции.

Спасибо

~ Харли

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...