In CakePHP, il find()
il metodo restituisce dati come il tuo primo formato. Ma se vuoi formattare come il secondo, devi elaborarlo a mano (cerca di evitarlo se possibile)
$data = $this->find('all');
$assocs = Set::extract('/User', $data); // extracting all `User` array
foreach($assocs as $key => $assoc) {
unset($data[$key]['User']); // removing the associate `User` from `$data`
$data[$key]['UserGroup']['User'] = $assoc['User']; // adding associate under `UserGroup`
}