http://book.cakephp.org/2.0/en/models/saving-your-data.html
Lee esta página del manual de cakephp. Una de las cosas que se muestra es que debes colocar en el formulario los campos de la siguiente forma: tabla.campo, en tu caso seria Estudiante.id,Estudiante.nombre, ......, EstudiantesFoto.archivo. El 17 de mayo de 2013 08:01, Fabian Olmos <[email protected]>escribió: > Si lo está en el modelo estudiante trabaja perfecto el problema es con > estudiantesfoto > El 17/05/2013 07:59, "Rene Suarez" <[email protected]> escribió: > > Buenos días! >> >> Prueba algo, por no dejar! verifica si el campo id de estudiantes esta >> como autonumerico. >> >> >> >> >> >> El 16 de mayo de 2013 21:26, Fabián Olmos <[email protected]>escribió: >> >>> estoy realizando nuevas pruebas >>> >>> aquí mi data >>> >>> $this->request->data = array( >>> 'Estudiante' => array( >>> 'nacionalidad_id' => 2, >>> 'cedula' => '5896369', >>> 'nombres' => 'JOSE', >>> 'apellidos' => 'MIGUEL', >>> 'fec_nac' => '16/05/2013', >>> 'nivel_id' => 2, >>> 'tel_per' => '0424-5555555', >>> 'correo' => '[email protected]', >>> 'twitter' => 'jmiguel', >>> 'facebook' => 'jmiguel', >>> 'estado_id' => 10, >>> 'municipio_id' => 1, >>> 'parroquia_id' => 1, >>> 'sector' => 'la casona', >>> 'calle_av' => 'la casona - calle los guayos', >>> 'edif_casa' => 'edif. velle verde', >>> 'n_edif_casa' => 'piso 3, apto. 7' >>> ), >>> 'EstudiantesFoto' => array( >>> 0=>array('archivo' => '5896369.jpg') >>> ) >>> ); >>> asi mando a guardar la data >>> >>> $this->Estudiante->saveAssociated($this->request->data) >>> >>> error >>> >>> *Error: *SQLSTATE[23502]: Not null violation: 7 ERROR: el valor null >>> para la columna «estudiante_id» viola la restricción not null DETAIL: La >>> fila que falla contiene (46, null, 5896369.jpg, 1, 2013-05-16 21:22:37.831). >>> >>> Modelo estudiante >>> >>> class Estudiante extends AppModel { >>> public $name = 'Estudiante'; >>> public $belongsTo = array( >>> 'Nivel', >>> 'Estado', >>> 'Nacionalidad' >>> ); >>> public $hasMany = array( >>> 'EstudiantesFoto' =>array( >>> 'className' => 'EstudiantesFoto', >>> 'foreignKey' => array('estudiante_id'), >>> 'dependent' => true >>> ) >>> >>> ); >>> >>> Modelo EstudiantesFoto >>> >>> class EstudiantesFoto extends AppModel { >>> public $name = 'EstudiantesFoto'; >>> public $belongsTo = array( >>> 'Estudiante'=>array( >>> 'classname'=>'Estudiante', >>> 'foreignKey'=>'estudiante_id' >>> ) >>> ); >>> >>> >>> >>> } >>> >>> porque no me toma el Id del registro padre (Estudiante) ? >>> >>> El miércoles, 15 de mayo de 2013 23:09:24 UTC-4:30, Fabián Olmos >>> escribió: >>> >>>> Buenas, espero me ayuden estoy usando el metodo saveAssociated >>>> >>>> este es mi modelo Estudiante >>>> >>>> class Estudiante extends AppModel { >>>> public $name = 'Estudiante'; >>>> public $belongsTo = array( >>>> 'Nivel', >>>> 'Estado', >>>> 'Nacionalidad' >>>> ); >>>> public $hasMany = array( >>>> 'EstudiantesFoto' =>array( >>>> 'className' => 'EstudiantesFoto', >>>> 'foreignKey' => array('estudiante_id') >>>> ) >>>> >>>> ); >>>> } >>>> >>>> Modelo EstudiatesFoto >>>> >>>> class EstudiantesFoto extends AppModel { >>>> public $name = 'EstudiantesFoto'; >>>> public $belongsTo = array( >>>> 'Estudiante' >>>> ); >>>> >>>> >>>> y Así estoy recibiendo la data >>>> >>>> array( >>>> 'Estudiante' => array( >>>> 'id' => '', >>>> 'nacionalidad_id' => '2', >>>> 'cedula' => '5896369', >>>> 'nombres' => 'JOSE', >>>> 'apellidos' => 'MIGUEL', >>>> 'fec_nac' => '15/05/2013', >>>> 'nivel_id' => '2', >>>> 'tel_per' => '0424-8969858', >>>> 'correo' => '[email protected]', >>>> 'twitter' => 'jmiguel', >>>> 'facebook' => 'jmiguel', >>>> 'estado_id' => '10', >>>> 'municipio_id' => '1', >>>> 'parroquia_id' => '1', >>>> 'sector' => 'la casacada', >>>> 'calle_av' => 'urbanización la cascada', >>>> 'edif_casa' => 'edificio 23', >>>> 'n_edif_casa' => 'piso 3, apto. 7' >>>> ), >>>> 'EstudiantesFoto' => array( >>>> (int) 0 => array( >>>> 'archivo' => array( >>>> 'name' => 'foto-carnet.jpg', >>>> 'type' => 'image/jpeg', >>>> 'tmp_name' => 'C:\wamp\tmp\php14F0.tmp', >>>> 'error' => (int) 0, >>>> 'size' => (int) 154444 >>>> ) >>>> ) >>>> ) >>>> ) >>>> >>>> >>>> >>>> cuando llamo el metodo saveAssociated me da este error >>>> >>>> *Error: *SQLSTATE[23502]: Not null violation: 7 ERROR: el valor null >>>> para la columna «estudiante_id» viola la restricción not null DETAIL: La >>>> fila que falla contiene (11, null, 5896369.jpg, 1, 2013-05-15 >>>> 23:08:18.623). >>>> >>>> *SQL Query: *INSERT INTO "public"."estudiantes_fotos" ("archivo") >>>> VALUES ('5896369.jpg') >>>> >>>> no se si tengo mal relacionado los modelos pero de cualquier forma me >>>> arroja el error de no poder salvar la data, gracias. >>>> >>> -- >>> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de >>> Grupos de Google. >>> Para anular la suscripción a este grupo y dejar de recibir sus correos >>> electrónicos, envía un correo electrónico a >>> [email protected]. >>> Para publicar una entrada en este grupo, envía un correo electrónico a >>> [email protected]. >>> Visita este grupo en http://groups.google.com/group/cakephp-es?hl=es. >>> Para obtener más opciones, visita >>> https://groups.google.com/groups/opt_out. >>> >>> >>> >> >> -- >> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de >> Grupos de Google. >> Para anular la suscripción a este grupo y dejar de recibir sus correos >> electrónicos, envía un correo electrónico a >> [email protected]. >> Para publicar una entrada en este grupo, envía un correo electrónico a >> [email protected]. >> Visita este grupo en http://groups.google.com/group/cakephp-es?hl=es. >> Para obtener más opciones, visita >> https://groups.google.com/groups/opt_out. >> >> >> > -- > Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de > Grupos de Google. > Para anular la suscripción a este grupo y dejar de recibir sus correos > electrónicos, envía un correo electrónico a > [email protected]. > Para publicar una entrada en este grupo, envía un correo electrónico a > [email protected]. > Visita este grupo en http://groups.google.com/group/cakephp-es?hl=es. > Para obtener más opciones, visita https://groups.google.com/groups/opt_out > . > > > -- Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos de Google. Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [email protected]. Para publicar una entrada en este grupo, envía un correo electrónico a [email protected]. Visita este grupo en http://groups.google.com/group/cakephp-es?hl=es. Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
