CakePHP が MySQL クエリの結果を自動的にループし、適切なマップにフォーマットする方法が気に入っています。
私が使用しているサンプルクエリは次のとおりです。
# Inside some model
return $this->query("
SELECT
Profile.id,
SUM( IF( HOUR(Log.event_one) > 3, 1, 0 ) ) as EventOne
FROM profiles Profile
JOIN logs Log ON Log.id = Profile.log_id
WHERE Profile.id = {$pUserId}
");
結果として、CakePHP は次のようなマップを返します。
array
0
array
'Profile'
array
'id' => 23
'0'
array
'EventOne' => 108
1
array
'Profile'
array
'id' => 23
'0'
array
'EventOne' => 42
2
...
私がやろうとしているのは、結果を次のようにすることです。
array
'Profile'
array
'id' => 23
'Events'
# ^ I want to be able to specify this key
array
'EventOne' => 108
何か案は?