El problema radica cuando subo mas de un adjunto, asi queda la tabla
cuando inserto 3 adjuntos:
Donde Tabla adjuntos
id, product_id, file_dir, file_name, file_code
1, 0, img, imagename1.jpg, 0000
2, 0, img, imagename2.jpg, 0000
3, 1, img, imagename2.jpg, 0000
Y lo que necesito yo es lo siguiente:
Donde Tabla adjuntos
id, product_id, file_dir, file_name, file_code
1, 1, img, imagename1.jpg, 0000
2, 1, img, imagename2.jpg, 0000
3, 1, img, imagename2.jpg, 0000
Donde uno hace referencia al id del producto. (hasMany: 1 Producto
muchos Adjuntos).
Probe con saveAll(), pero no me da el resultado esperado.
Ese es el codigo del metodo add:
Código PHP:
Ver originalfunction add() {
if (!empty($this->data)) { if ($this->data['Attachment']['File'][0]['error'] == 4) {
$this->Guitar->create();
if ($this->Guitar->save($this->data)) {
$this->Session->setFlash(__('The notice has been saved', true));
$this->redirect(array('action' => 'index')); } else {
$this->Session->setFlash(__('The notice could not be saved.
Please, try again.', true));
}
} else {
if ($this->FileUpload->success) {
$this->Guitar->create();
if ($this->Guitar->save($this->data)) {
$this->data['Attachment']['guitar_id'] = $this->Guitar->id; //
Aca recupero el id del producto.
$this->Guitar->Attachment->save($this->data); //Aca lo inserta
en el modelo Adjunto
$this->Session->setFlash(__('The notice has been saved',
true));
} else {
$this->Session->setFlash(__('The notice could not be saved.
Please, try again.', true));
}
}
}
}
}