Я пытался всю ночь, чтобы обновить запись так:CakePHP: Почему я не могу обновить запись с помощью set() или save()?
$r = $this->Question->read(NULL, $question['Question']['id']);
debug($r);// This is a complete Question array
$this->Question->set('status', 'version');
$s = $this->Question->save();
//$s = $this->Question->save($r['Question']);//this also doesn't work
debug($s); // = False every time!! Why??
exit;
Два комментарии показывают изменения, которые я пробовал, но не получилось.
@Dipesh:
$this->data = $this->Question->read(NULL, $question['Question']['id']);
$this->Question->status = 'version';
$s = $this->Question->save($this->data);
debug($s);
exit;
@Dipesh II:
$this->request->data = $this->Question->read(NULL, $question['Question']['id']);
debug($this->data);
//$this->Question->status = 'version';
$this->request->data['Question']['status'] = 'version';
$s = $this->Question->save($this->request->data);
//$s = $this->Question->save($r['Question']);
debug($s);
exit;
@Dipesh III: (удален)
Есть ли у вас валидации набора для Вопроса? Если да, можете ли вы выполнить 'debug ($ this-> Question-> validationErrors)' сразу после 'debug ($ s)'? – Nunser
Это хорошая идея. Я не знал об этом методе. Но вы видели мой ответ ниже? Не будут ли проверки применимы и к моему решению? – emersonthis
Да, но я предполагаю, что ваше решение работает, потому что, добавляя все данные вручную, вы можете корректно проверять и, следовательно, сохранять вопрос. Отправьте свою модель в свой вопрос и давайте посмотрим, что у нас есть :) – Nunser