Estoy intentando seguir tu ejemplo, pero en la vista dónde coloco la línea
<?php echo $html->link('',array('controller' => 'comunidades', 'action' =>
'add',$user['User']['id']),array('class'=>'nueva_comunidad')); ?>
Ya me da error diciendo Undefined variable: user

El 24 de febrero de 2012 01:35, checho <[email protected]> escribió:

> 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.
>
>


-- 
Francisco Javier Peña Caballero
Tlfno: 652966610

-- 
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