Cambia
'fields' => 'Booking.id',
por esto
'fields' => array('Booking.id'),
Saludos.
--
David Riveros Fonseca | Desarrollador Web | ANDAIN - Desarrollo y diseño Web
[email protected] | http://www.andain.cl/
2010/12/30 chalien <[email protected]>
> Buenas
>
> La siguiente es con el fin de solicitar su ayuda acerca de un problema
> q se me ha presentado tengo los modelos
>
> user
> habitacion
> reserva
> Booking : reservas
> Property: Propiedades (de lugar ej habitaciones)
> user->Property
> Property->Booking
>
> cuando quiero traer algunos datos desde un find('all') que contenga
> algunos campos de cada modelo uso containable en la Booking asi
>
>
> $this->Booking->Behaviors->attach('Containable');
> $contain = array('User' => array('fields' =>
> array('User.last_name', 'User.email')),
> 'Property' => array('fields' => array('Property.id'),
> 'User' => array('fields' => array('User.last_name', 'User.email'))));
>
> $cont = array('Property.id','User.id');
>
>
> $Params = array('conditions' => array(
> 'Booking.id' => (int) 1,
> 'Booking.user_id' => (int) 1),
> 'fields' => 'Booking.id',
> 'recursive' => 2,
> 'contain' => $cont
> );
>
> // $this->Showcase->User->find('first');
> $this->Booking->fields = array('id');
> $result = $this->Booking->find('first', $Params);
> exit(print_r($result));
> }
>
>
> dos posibles malas respuestas de cakephp
>
> 1. si le quito al find la propiedad fields. me trae todos los campos
> de booking (q no queiro) y me trae sus hijos bien de esta forma:
>
> Array (
> [Booking] => Array (
> [id] => 1
> [desc] => booking 1
> [user_id] => 1
> [property_id] => 1 )
> [User] => Array (
> [last_name] => palencia
> [email] => [email protected] )
> [Property] => Array (
> [id] => 1
> [user_id] => 1
> [User] => Array (
> [last_name] => palencia
> [email] =>
> [email protected] ) )
>
> )
>
> no esta bien asi por q yo solo quiero obtener el id del booking
>
> 2. si coloco el campo field en el find recibo esto :
>
> Array ( [Booking] => Array ( [id] => 1 ) [User] => Array ( [id] => 1 )
> [Property] => Array ( ) )
>
> Donde solo tiene referencia para user pero a property no le ingresa
> ningun campo, haciendo como sea no lo ingresa.
>
>
> No se que hacer para que me quede asi :
>
> Array (
> [Booking] => Array (
> [id] => 1
> )
> [User] => Array (
> [last_name] => palencia
> [email] => [email protected] )
> [Property] => Array (
> [id] => 1
> [user_id] => 1
> [User] => Array (
> [last_name] => palencia
> [email] =>
> [email protected] ) )
>
> )
>
> si alguien sabe por favor ayudenme. si quieren las fuentes y la bd de
> prueba avisenme
>
> Mcuhas gracias
>
> --
> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de
> Grupos de Google.
> Para publicar una entrada en este grupo, envía un correo electrónico a
> [email protected].
> Para anular tu suscripción a este grupo, envía un correo electrónico a
> [email protected]<cakephp-es%[email protected]>
> Para tener acceso a más opciones, visita el grupo en
> http://groups.google.com/group/cakephp-es?hl=es.
>
>
--
Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos
de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a
[email protected].
Para anular tu suscripción a este grupo, envía un correo electrónico a
[email protected]
Para tener acceso a más opciones, visita el grupo en
http://groups.google.com/group/cakephp-es?hl=es.