フォーム送信CakePhpの後にフィールドに値を割り当てます
-
23-12-2019 - |
質問
iデータベースには、一時停止時間を格納するための2つのフィールド、すなわち 'phour' 、 'pmin' があるというイベントモデルがあります。 イベント作成フォームで、フォームが送信された後に次の配列を生成するタイプタイムの入力フィールドがあります。
array(
'Event' => array(
'pause' => array(
'hour' => '02',
'min' => '30'
),
'hours' => '3',
'minutes' => '30',
)
)
.
フォームの送信後にDBフィールドに従って一時停止時間と分を割り当てる必要がありますが、働くことはできません。
あらゆる助けが大いに評価されています。
解決
データを編集するために、モデル内の 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;
}
. 他のヒント
あなたのフォームによって呼び出されたアクションで、:
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);
}
. 所属していません StackOverflow