Solucionado!!! al final me las arregle con un tema subido por otro
usuario aqui en este Grupo/Foro y lo pude adaptar a mi codigo, no
estaba captando bien el pase de argumentos...

la linea en donde me dirijo al add quedo asi

<?php echo $this->Html->link(__('Agregar', true), array('controller'
=> 'empleados', 'action' => 'add',$empresa['Empresa']['id']));?>


la funcion add quedo asi

function add($id = null) {
                if (!empty($this->data)) {
                        $this->Empleado->create();
                        if ($this->Empleado->save($this->data)) {
                                $this->Session->setFlash(__('El registro se 
guardo correctamente',
true));
                                $this->redirect(array('action' => 'index'));
                        } else {
                                $this->Session->setFlash(__('El registro no 
pudo guardarse.
Verifique que haya cargado todos los campos e intente nuevamente.',
true));
                        }
                }
                $this->set('idEmpresa', $id);
                $localidads = $this->Empleado->Localidad->find('list',
array('order'=> array('Localidad.localidad')));
                $categorias = $this->Empleado->Categoria->find('list',
array('order'=> array('Categoria.categoria')));
                $empresas = $this->Empleado->Empresa->find('list', 
array('order'=>
array('Empresa.razonsocial')));
                $estadocivils = $this->Empleado->Estadocivil->find('list');
                $this->set(compact('localidads', 'categorias', 'empresas',
'estadocivils'));
        }



y por ultimo cuando estoy en el add.ctp puedo invocar a la variable
tranquilamente

echo $this->Form->input('empresa_id', array('value'=>$idEmpresa));



Ahora ya entendiiiiiiiii!!!!

gracias igual y espero que a alguien mas le sirva mi ejemplo.

Saludos!


On 23 feb, 11:15, checho <[email protected]> wrote:
> Buenos dias:
>
> Disculpen que agregue esto que seguramente ya tiene mas de una
> solucion, pero intente buscar una adecuada y no pude...
>
> La consulta es la siguiente:
>
> Tengo una estructura Empresa-Empleado en donde todo me funciona ok,
> los formularios creados con Bake (no con scaffolding sino con la
> consola de Bake) me funcionan superbien.
>
> El problema esta en que por ejemplo en la vista de Empresa (view), me
> muestra los datos de la empresa y mas abajo el bake automaticamente me
> genero el codigo para ver los registros de Empleados relacionados con
> esa empresa y ademas me genero el boton "Add" para desde ahi poder ir
> automaticamente a agregar un Empleado.
>
> El problema es que cuando le doy Add desde ahi me dirige al form Add
> de Empleado pero tengo que volver a seleccionar en el Combobox el Id
> de la empresa, la Empresa a la que pertenece el Empleado. Creo que
> automaticamente puedo pasarle el Id de la Empresa puesto que estoy
> siendo redirigido desde ahi y ese valor lo debo tener en algun lado,
> el tema es que no se como hacerlo.
>
> se entiende?
>
> El codigo del boton Add que se encuentra en el view de Empresa es el
> siguiente:
>
> <?php echo $this->Html->link(__('Agregar', true), array('controller'
> => 'empleados', 'action' => 'add'));?>
>
> La funcion Add de empleado_controller es la siguiente:
>
> function add() {
>                if (!empty($this->data)) {
>                        $this->Empleado->create();
>                        if ($this->Empleado->save($this->data)) {
>                                $this->Session->setFlash(__('El
> registro se guardo correctamente',
> true));
>                                $this->redirect(array('action' =>
> 'index'));
>                        } else {
>                                $this->Session->setFlash(__('El
> registro no pudo guardarse.
> Verifique que haya cargado todos los campos e intente nuevamente.',
> true));
>                        }
>                }
>                $localidads = $this->Empleado->Localidad->find('list');
>                $categorias = $this->Empleado->Categoria->find('list');
>                $empresas = $this->Empleado->Empresa->find('list');
>                $estadocivils = $this->Empleado->Estadocivil->find('list');
>
>                $this->set(compact('localidads', 'categorias',
> 'empresas',
> 'estadocivils'));
>        }
>
> Desde ya agradezco enormemente la ayuda que puedan brindarme al
> respecto. Y avisenme si necesitan mas info respecto al codigo.
>
> Un abrazo.

-- 
Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos 
de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a 
[email protected].
Para anular tu suscripción a este grupo, envía un correo electrónico a 
[email protected]
Para tener acceso a más opciones, visita el grupo en 
http://groups.google.com/group/cakephp-es?hl=es.

Responder a