Мне бы пришлось согласиться с @ bfavaretto
Не видя структуру вашей базы данных, трудно быть уверенным.
Я подозреваю, что вы делаете
- У проекта есть много экспериментов
- У эксперимента есть только одно состояние эксперимента
Требуется дополнительный
- Эксперимент имеет много экспериментов
нужная таблица записейчтобы иметь идентификатор int (11), эксперимент_ид int (11), содержимое ТЕКСТ, созданный DATETIME
, если у вас все в порядке, используя поле DATETIME для отметки времени, тогда я предлагаю использовать ** созданный , поскольку cakephpавтоматическое заполнение для вас.
вместо обновления эксперимента вы добавляете эксперимент.
в методе afterSave ExperimentEntry вы делаете
$this->Experiment->id = $this->data['ExperimentEntry']['experiment_id'];
$latestSummary = $this->Experiment->field('result_summary');
$latestSummary .= $this->data['ExperimentEntry']['content']; // you may need to add a newline before you append. up to you
$this->Experiment->save(array(
'Experiment' => array(
'result_summary' => $latestSummary
)));
Код не тестируется, поэтому используйте на свой страх и риск.
** нет соответствующей страницы в документах cakephp 2.0 для созданных и измененных, но определенно это работает.Я пробовал это раньше.