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.
