У меня есть BlocksController и Block model. В cakephp-1.2 Я использовал действие редактирования для редактирования блоков моего приложения, и он работал нормально.Миграция CakePHP приводит к тому, что редактирование действует как добавление
После миграции на 1.3 и 2.x я заметил, что действие редактирования приводит к сохранению отредактированного блока в качестве новой записи.
В документах cakePHP я читал, что в 1.3 помощник формы больше не передает идентификатор, и поэтому модель рассматривала процесс как добавление.
Чтобы решить эту проблему, я попытался добавить скрытое поле с именем ID со значением идентификатора блока редактируется следующим образом:
<?php echo $this->Form->create('Block', array('class' => 'nice custom'));?>
//The following line is required in cakephp 1.3+
<?php echo $this->Form->hidden('id', array('value' => $block['Block']['id']));?>
Описанное решение работает нормально. Однако Мне нужно знать другой способ сделать это, не меняя вид. Это возможно?
Что не так с простым входом 'echo $ this-> Form-> ('id')' как показано в документации и испеченном коде? – mark
@mark Я только понял, что он не может быть напечатан как скрытый элемент формы. – SaidbakR