Edición de «Como hacer un CRUD en KumbiaPHP Framework»
De KumbiaPHP Framework Wiki
Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así efectuar la reversión.
Revisión actual | Tu texto | ||
Línea 1: | Línea 1: | ||
− | + | Este manual nos permitirá de manera sencilla conocer y entender la implementación de un CRUD Crear, Obtener, Actualizar y Borrar (Create, Read, Update y Delete en inglés). | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | == El modelo == |
− | |||
− | + | Vamos ahora a definir el modelo, este arhivo va en la carpeta '''models''' de nuestra aplicación y lo nombramos como: parte_maquina.php | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | '''Modelo:''' | |
− | |||
− | ''' | ||
<source lang="php" line> | <source lang="php" line> | ||
<?php | <?php | ||
− | class | + | class ParteMaquina extends ActiveRecord{ |
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
+ | ?> | ||
</source> | </source> | ||
− | == | + | == El controlador == |
− | |||
− | |||
− | + | El controlador es nuestro eje principal, es quien recibe las peticiones de las vistas y se las pasa al modelo. | |
− | |||
− | |||
<source lang="php" line> | <source lang="php" line> | ||
<?php | <?php | ||
− | / | + | class ParteMaquinaController extends ApplicationController { |
− | + | //Carga del modelo ParteMaquina, porque tenemos la autocarga de modelos desactivada (off) | |
− | + | public $models = array('parte_maquina'); | |
− | |||
− | + | /* | |
− | + | * Función que consulta y pagina la lista de | |
− | / | + | * partes de máquina. |
− | + | */ | |
− | + | public function index($page=1) { | |
− | public function index($page=1) | + | $cons=""; |
− | + | if(isset ($this->parameters[1])) { | |
− | $ | + | $cons= "order: ".$this->parameters[1]." asc"; |
− | $this-> | + | $this->orden="/".$this->parameters[1]; |
+ | }else { | ||
+ | $this->orden=""; | ||
+ | } | ||
+ | $this->count = $this->ParteMaquina->count(); | ||
+ | $this->page = $this->ParteMaquina->paginate('per_page: 20', "page: $page"); | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * Función que muestra la información | ||
+ | * partes de máquina. Se consulta a través de su identificador | ||
+ | */ | ||
+ | public function show($id) { | ||
+ | $this->obj = $this->ParteMaquina->find($id); | ||
} | } | ||
− | /** | + | /* |
− | + | * Función que toma los datos del POST | |
− | + | * crea una ParteMaquina y lo almacena. | |
− | public function create () | + | */ |
− | + | public function create() { | |
− | / | + | //Si ha datos 'parte_maquina' en el POST |
− | + | if ($this->has_post('parte_maquina')) { | |
− | + | //Se crea un nuevo objeto tipo ParteMaquina | |
− | + | $obj = new ParteMaquina($this->post('parte_maquina')); | |
− | + | ||
− | + | //Si guarda el objeto | |
− | if($this->has_post(' | + | if ($obj->save()) { |
− | / | + | //Muestra un mensaje de exito y nos envía a listado |
− | + | Flash::notice('Operación Exitosa'); | |
− | + | Router::route_to('controller: parte_maquina','action: index','id: 1'); | |
− | + | } else { | |
− | + | //Muestra un mensaje de error, | |
− | $ | + | Flash::error('No se Guardo!'); |
− | // | + | //Cargamos el objeto en una variable, para mostralo en la vista |
− | if( | + | $this->$obj = $obj; |
− | Flash:: | + | //Se renderiza de nuevo la vista create |
− | //se | + | $this->render('create'); |
− | $this-> | ||
− | / | ||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
} | } | ||
} | } | ||
− | + | public function edit($id=0) { | |
− | + | ||
− | + | if ($this->has_post('parte_maquina')) { | |
− | public function edit($id = | + | $obj = new ParteMaquina($this->post('parte_maquina')); |
− | + | //$obj->version= $this->ciudad->version+1; | |
− | + | if ($obj->update()) { | |
− | if($ | + | Flash::notice('Operación Exitosa'); |
− | + | Router::route_to('controller: parte_maquina','action: index','id: 1'); | |
− | $ | ||
− | |||
− | |||
− | |||
− | |||
− | if( | ||
− | Flash:: | ||
− | |||
− | |||
} else { | } else { | ||
− | + | Flash::error('No se Guardo!'); | |
+ | $this->render('edit'); | ||
} | } | ||
+ | }else { | ||
+ | $this->obj = $this->ParteMaquina->find($id); | ||
} | } | ||
} | } | ||
− | + | public function delete($id=0) { | |
− | + | $obj = $this->ParteMaquina->find($id); | |
− | + | ||
− | + | if($obj->delete()) { | |
− | + | Flash::notice('Operación Exitosa'); | |
− | public function | + | }else{ |
− | + | Flash::error('No se Eliminó!'); | |
− | $ | ||
− | if ($ | ||
− | |||
− | |||
− | |||
} | } | ||
− | + | ||
− | Router::route_to('action: index'); | + | Router::route_to('controller: parte_maquina','action: index','id: 1'); |
} | } | ||
} | } | ||
+ | ?> | ||
</source> | </source> | ||
− | == | + | == Las vistas == |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | create.phtml | ||
− | |||
<source lang="php" line> | <source lang="php" line> | ||
− | < | + | <h1>Crear parte de máquina</h1> |
− | < | + | <?php View::content() ?> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | <?php echo form_tag("parte_maquina/create")?> | ||
− | + | <label for="parte_maquina_nombre">Nombre:</label> | |
− | < | + | |
− | + | <?php echo textupper_field_tag('parte_maquina.nombre') ?> | |
− | < | + | |
− | + | <?php echo submit_tag('Guardar') ?> | |
− | + | <?php echo end_form_tag(); ?> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <?php echo end_form_tag() ?> | ||
</source> | </source> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
[[Categoría:Tutoriales KumbiaPHP]] | [[Categoría:Tutoriales KumbiaPHP]] | ||
− | |||
− | |||
− | |||
− | |||
− |