1
저장하기 전에 게시 된 데이터를 조작해야합니다. $ this-> 데이터는이CakePHP 2 beforeSave() not working
Array
(
[Presence] => Array
(
[Month] => 02
[Year] => 2012
[0] => Array
(
[day] => 1
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[1] => Array
(
[day] => 2
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[2] => Array
(
[day] => 3
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[3] => Array
(
[day] => 4
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[4] => Array
(
[note] =>
)
[5] => Array
(
[note] =>
)
[6] => Array
(
[day] => 7
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[7] => Array
(
[day] => 8
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[8] => Array
(
[day] => 9
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[9] => Array
(
[day] => 10
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[10] => Array
(
[day] => 11
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[11] => Array
(
[note] =>
)
[12] => Array
(
[note] =>
)
[13] => Array
(
[day] => 14
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[14] => Array
(
[day] => 15
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[15] => Array
(
[day] => 16
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[16] => Array
(
[day] => 17
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[17] => Array
(
[day] => 18
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[18] => Array
(
[note] =>
)
[19] => Array
(
[note] =>
)
[20] => Array
(
[day] => 21
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[21] => Array
(
[day] => 22
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[22] => Array
(
[day] => 23
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[23] => Array
(
[day] => 24
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[24] => Array
(
[day] => 25
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[25] => Array
(
[note] =>
)
[26] => Array
(
[note] =>
)
[27] => Array
(
[day] => 28
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[28] => Array
(
[day] => 29
[presenza] => 1
[time_in] => 09:00
[time_out] => 18:00
[pausa] => 01:00
[hours] => 08:00
[client_id] => 4
[note] =>
)
[user_id] => 3
)
)
같은 배열 내가 날 수정하고 모든 "하위 배열"의 USER_ID를 삽입해야합니다.
하지만 디버깅을 위해 디버깅 ($ this-> data)을 beforeSave()에 호출하면 결과는 빈 배열이고 아무 것도 할 수 없습니다.
하지만 권리 MVC에 따라 그것을 할까? – simofox
그냥 [cakephp documentation] (http://book.cakephp.org/2.0/en/models/callback-methods.html)에서 beforeSave 내에서 데이터를 수정할 수 있다고 (MVC에 따르면)해야한다고 말하면됩니다. – LuisClemente
@LuisClemente 네가 맞아,'$ this-> data' 배열의 키를 다시 설정하면 그 값으로 저장 될 것입니다. – Oldskool