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.


Responder a