На странице редактирования модели Test Я хочу обновить поле «Вопросы.Размер» на всех связанных с ним (по hasMany) вопросах из той же формы.CakePHP: Как обновить несколько записей одновременно с помощью хелпера формы
Я готов, Cake book chapter on saveMany()/saveAll() в книге, и я использую Model.0.field syntax
, но я не могу понять, как сказать CakePHP который запись в соответствующий который ввода. Должно ли #
в Model.#.field
соответствовать полю id вопроса? Вот то, что я сейчас делаю:
echo $this->Form->create('Question', array('action'=>'order'));
$n = 0;
foreach ($questions_array as $question) : ?>
<?php echo $this->Form->input('Question.'.$n.'.order'); ?>
<?php echo $this->Form->input('Question.'.$n.'.id', array('type'=>'hidden', 'value'=>$question['Question']['id'])); ?>
<input type="submit" value="Save" />
...
$n++;
endforeach;
$this->Question->Form->end();
Форма отправляет и появляется сохранить, но обновленные order
значения не соответствует правильному вопросу записи. Что я делаю не так?
Update:
Вот order
действия в моем контроллере:
public function admin_order() {
$data = $this->request->data;
$this->Question->saveAll($data['Question']);
$this->Session->setFlash("Order saved.");
$this->redirect($this->referer());
}
Вы увеличиваете $ n? – Dave
Что такое "Qset" и как он вписывается в ваш описываемый вопрос? – Dave
У Дэйва есть хорошие вопросы, также я вижу, что ваша форма содержит кнопку «отправить» на * каждой строке * (это не должно быть проблемой, просто заметили ее). Не могли бы вы изменить свой вопрос и добавить свой код контроллера, чтобы посмотреть, как вы сохраняете свои данные. – thaJeztah