Re: ¿Por qué me aparece este error (Undefined offset)?
Hola! Pues he estado comprobandolo y si tengo un problema con las relaciones, concretamente en una: 1 Proyecto - N Personas N Personas - N Proyectos Tengo dos relaciones diferentes entre los mismos modelos (Proyecto y Persona). Me explico: Un proyecto lo pueden realizar varias personas, pero una persona solo puede realizar un unico proyecto (relacion 1-N). Por otro lado, antes de realizar un proyecto, se preseleccionan una lista de personas y en esta preseleccion una misma persona si puede estar relacionada con varios proyectos (relacion N-N). Por lo tanto tengo: Proyecto hasMany Persona-Persona belongsTo Proyecto Proyecto hasAndBelongsToMany Persona---Persona hasAndBelongsToMany Proyecto Y en el modelo Proyecto lo tengo asi: var $hasMany = array( 'Persona' = array('className' = 'Persona', 'foreignKey' = 'proyecto_id' ); var $hasAndBelongsToMany = array( 'Persona' = array('className' = 'Persona', 'joinTable' = 'personas_proyectos', 'foreignKey' = 'proyecto_id', 'associationForeignKey' = 'persona_id' ); Si quito una de las dos relaciones, el error no aparece. ¿Como puedo solucionarlo? ¿Alguna sugerencia? Gracias y un saludo On 23 ene, 22:28, tAO... [EMAIL PROTECTED] wrote: Hola al parecer tienes un problema en las relaciones de los modelos... cheka eso y si sigues con problemas envia el codigo de los modelos... saludos --~--~-~--~~~---~--~~ Has recibido este mensaje porque estás suscrito a Grupo CakePHP-es de Grupos de Google. Si quieres publicar en este grupo, envía un mensaje de correo electrónico a CakePHP-es@googlegroups.com Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED] Para obtener más opciones, visita este grupo en http://groups.google.com/group/CakePHP-es?hl=es. -~--~~~~--~~--~--~---
Re: ¿Por qué me aparece este error (Undefined offset)?
Esas dos relaciones no pueden coexistir. Lo que vos tendrías que hacer es en el caso particular de selección de personas, utilizar unBindModel y bindModel. Es decir en el método del controller que armás la preselección, hacés algo así (no probé el código): $this-Proyecto-unbindModel( array('hasMany' = 'Persona') ); $this-Proyecto-bindModel( array('hasAndBelongsToMany = array( 'Persona' = array('className' = 'Persona', 'joinTable' = 'personas_proyectos', 'foreignKey' = 'proyecto_id', 'associationForeignKey' = 'persona_id' ) ))); Saludos! -- Matias Lespiau http://www.gignus.com/ 2008/1/24 dandreta [EMAIL PROTECTED]: Hola! Pues he estado comprobandolo y si tengo un problema con las relaciones, concretamente en una: 1 Proyecto - N Personas N Personas - N Proyectos Tengo dos relaciones diferentes entre los mismos modelos (Proyecto y Persona). Me explico: Un proyecto lo pueden realizar varias personas, pero una persona solo puede realizar un unico proyecto (relacion 1-N). Por otro lado, antes de realizar un proyecto, se preseleccionan una lista de personas y en esta preseleccion una misma persona si puede estar relacionada con varios proyectos (relacion N-N). Por lo tanto tengo: Proyecto hasMany Persona-Persona belongsTo Proyecto Proyecto hasAndBelongsToMany Persona---Persona hasAndBelongsToMany Proyecto Y en el modelo Proyecto lo tengo asi: var $hasMany = array( 'Persona' = array('className' = 'Persona', 'foreignKey' = 'proyecto_id' ); var $hasAndBelongsToMany = array( 'Persona' = array('className' = 'Persona', 'joinTable' = 'personas_proyectos', 'foreignKey' = 'proyecto_id', 'associationForeignKey' = 'persona_id' ); Si quito una de las dos relaciones, el error no aparece. ¿Como puedo solucionarlo? ¿Alguna sugerencia? Gracias y un saludo On 23 ene, 22:28, tAO... [EMAIL PROTECTED] wrote: Hola al parecer tienes un problema en las relaciones de los modelos... cheka eso y si sigues con problemas envia el codigo de los modelos... saludos --~--~-~--~~~---~--~~ Has recibido este mensaje porque estás suscrito a Grupo CakePHP-es de Grupos de Google. Si quieres publicar en este grupo, envía un mensaje de correo electrónico a CakePHP-es@googlegroups.com Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED] Para obtener más opciones, visita este grupo en http://groups.google.com/group/CakePHP-es?hl=es. -~--~~~~--~~--~--~---
¿Por qué me aparece este error (Undefined offset)?
Hola!! En mi controlador tengo la funcion index de la siguiente forma: function index() { $this-Proyecto-recursive = 2; $this-set('proyectos', $this-paginate()); } Y en la vista index se muestran correctamente todos los proyectos con sus campos y para cada proyecto los datos de otras tablas relacionadas. El problema es que aparece este error: Notice (8): Undefined offset: 0 [CORE/cake/libs/model/datasources/ dbo_source.php, line 882] La cuestión es que he observado que se debe al atributo recursive, ya que si lo pongo = 0 no me aparece el error, pero claro no me aparecen los datos de las tablas relacionadas. Si lo pongo =1 tambien me aparece el error. ¿Cómo puedo solucionar este error? ¿Alguna sugerencia? Gracias de antemano y saludos --~--~-~--~~~---~--~~ Has recibido este mensaje porque estás suscrito a Grupo CakePHP-es de Grupos de Google. Si quieres publicar en este grupo, envía un mensaje de correo electrónico a CakePHP-es@googlegroups.com Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED] Para obtener más opciones, visita este grupo en http://groups.google.com/group/CakePHP-es?hl=es. -~--~~~~--~~--~--~---
Re: ¿Por qué me aparece este error (Undefined offset)?
Hola al parecer tienes un problema en las relaciones de los modelos... cheka eso y si sigues con problemas envia el codigo de los modelos... saludos --~--~-~--~~~---~--~~ Has recibido este mensaje porque estás suscrito a Grupo CakePHP-es de Grupos de Google. Si quieres publicar en este grupo, envía un mensaje de correo electrónico a CakePHP-es@googlegroups.com Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED] Para obtener más opciones, visita este grupo en http://groups.google.com/group/CakePHP-es?hl=es. -~--~~~~--~~--~--~---