我有一个事件模型,在数据库中有两个字段来存储暂停时间,即'phour'和'pmin'。 在事件创建表单中,我有输入字段类型的时间,在提交表单后生成以下数组:
array(
'Event' => array(
'pause' => array(
'hour' => '02',
'min' => '30'
),
'hours' => '3',
'minutes' => '30',
)
)
我需要在提交表单后将暂停小时和分钟分配给相应的数据库字段,但我无法让它工作。
非常感谢任何帮助。
答案 0 :(得分:2)
始终使用模型中的 beforeSave()回调来编辑数据。
以@ jimmy-madon
为例public function beforeSave($options = array())
{
if (!empty($this->data[$this->alias]) {
$this->data[$this->alias]['phour'] = $this->data[$this->alias]['pause']['hour'];
$this->data[$this->alias]['pmin'] = $this->data[$this->alias]['pause']['min'];
}
return true;
}
答案 1 :(得分:0)
在表单调用的操作中,使用:
if (!empty($this->request->data['Event']) {
$this->request->data['Event']['phour'] = $this->request->data['Event']['pause']['hour'];
$this->request->data['Event']['pmin'] = $this->request->data['Event']['pause']['min'];
$this->Event->save($this->request->data);
}