Pareces nuevo por aquí. Si quieres participar, ¡pulsa uno de estos botones!
/** * Edita un Registro */ public function edit($nom_perfil = null) { $perfil = new PerfilRol(); if($nom_perfil != null){ //Aplicando la autocarga de objeto, para comenzar la edición $this->PERFIL_ROL = $perfil->find("conditions: nom_perfil = '$nom_perfil'"); } //se verifica si se ha enviado el formulario (submit) if($this->has_post('PERFIL_ROL')){ if(!$perfil->update($this->post('PERFIL_ROL'))){ Flash::error('Falló Operación'); //se hacen persistente los datos en el formulario $this->PERFIL_ROL = $this->post('PERFIL_ROL'); } else { flash::success("Actualizado"); Router::route_to('action: index'); } } }
<div id='logo-kumbia'><?php //echo img_tag('default/kumbia.png') ?></div> <div id="info"> <?php View::content(); ?> <?php echo form_tag('menus_hola/edit/') ?> <table border="0" cellspacing="1" width="30%"> <tr><h3>Actualizar Perfil</h3> <tr></tr> <td>Nombre del Perfil:</td> <td><?php echo text_field_tag(array('menus_hola.nombre')) ?></td> </tr> <tr> <td>Descripcion del Perfil:</td> <td><?php echo text_field_tag(array('menus_hola.titulo')) ?></td> </tr> <tr> <td>&nbsp;</td> <?php echo hidden_field_tag(array('menus_hola.id')) ?> <td><?php echo submit_tag('Actualizar') ?></td> </tr> </table> <? print_r($menus_hola) ?> <?php echo end_form_tag() ?><br> </div>
Array ( [0] => PerfilRol Object ( [primary_key] => Array ( [0] => nom_perfil [1] => nom_perfil ) [logger] => 1 [db] => DbOracle Object ( [id_connection] => Resource id #29 [last_result_query] => Resource id #43 [last_query:private] => [lastError] => [autocommit:private] => [num_rows:private] => [debug] => [logger] => 1 [lastQuery] => SELECT nom_perfil,desc_perfil,rol_asociado FROM perfil_rol WHERE nom_perfil = 'oficina' ) [database:protected] => [schema:protected] => [source:protected] => perfil_rol [count] => [fields] => Array ( [0] => nom_perfil [1] => desc_perfil [2] => rol_asociado ) [non_primary] => Array ( [0] => desc_perfil [1] => rol_asociado ) [not_null] => Array ( [0] => nom_perfil [1] => desc_perfil [2] => rol_asociado ) [_with_default:protected] => Array ( ) [attributes_names] => Array ( [0] => nom_perfil [1] => desc_perfil [2] => rol_asociado ) [is_view] => [debug] => [persistent] => [_validates:protected] => Array ( [inclusion_in] => Array ( ) [exclusion_of] => Array ( ) [numericality_of] => Array ( ) [format_of] => Array ( ) [date_in] => Array ( [0] => f_actual ) [email_in] => Array ( ) [uniqueness_of] => Array ( [0] => nom_usr [1] => nom_perfil ) ) [_in:protected] => Array ( ) [_at:protected] => Array ( ) [_where_pk:protected] => [_dumped:protected] => 1 [_dump_lock:protected] => [_data_type:protected] => Array ( [nom_perfil] => varchar2 [desc_perfil] => varchar2 [rol_asociado] => varchar2 ) [_has_one:protected] => Array ( ) [_has_many:protected] => Array ( ) [_belongs_to:protected] => Array ( ) [_has_and_belongs_to_many:protected] => Array ( ) [parent_of] => Array ( ) [nom_perfil] => oficina [desc_perfil] => oficina [rol_asociado] => oficina ) )
Comentarios
si tienes en la vista esto:
text_field_tag(array('menus_hola.nombre'))
te das cuenta que estas creando un array llamado menus_holas
por lo tanto cuendo realizes la busqueda debes cargar ese ese array en el controller de esta manera:
$this->menus_hola = $perfil->find("conditions: nom_perfil = '$nom_perfil'");
y con este controlador