Diferencia entre revisiones de «Como hacer un CRUD en KumbiaPHP Framework»

De KumbiaPHP Framework Wiki
Saltar a: navegación, buscar
Línea 89: Línea 89:
 
</source>
 
</source>
  
Las vistas:
+
== Las vistas ==
  
 
create.phtml
 
create.phtml
  
 
<source lang="php" line>
 
<source lang="php" line>
<h1>Crear tipo de parte de máquina</h1>
+
<h1>Crear parte de máquina</h1>
 
<?php View::content() ?>
 
<?php View::content() ?>
  
<?php echo form_tag("tipo_parte_maquina/create")?>
+
<?php echo form_tag("parte_maquina/create")?>
  
<label for="tipo_parte_maquina.nombre">Nombre:</label>
+
<label for="parte_maquina_nombre">Nombre:</label>
 
          
 
          
<?php echo textupper_field_tag('tipo_parte_maquina.nombre') ?>
+
<?php echo textupper_field_tag('parte_maquina.nombre') ?>
 
          
 
          
<?php echo submit_tag('Guardar','class: save') ?>
+
<?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]]

Revisión de 22:31 16 ago 2009

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:

  1. <?php
  2. class ParteMaquina extends ActiveRecord{
  3.  
  4. }
  5. ?>

El controlador

El controlador es nuestro eje principal, es quien recibe las peticiones de las vistas y se las pasa al modelo.

  1. <?php
  2. class ParteMaquinaController extends ApplicationController {
  3.  
  4.     public $models = array('parte_maquina');   
  5.  
  6.     public function index($page=1) {
  7.         $cons="";
  8.         if(isset ($this->parameters[1])) {
  9.             $cons= "order: ".$this->parameters[1]." asc";
  10.             $this->orden="/".$this->parameters[1];
  11.         }else {
  12.             $this->orden="";
  13.         }
  14.         $this->count = $this->ParteMaquina->count();
  15.         $this->page = $this->ParteMaquina->paginate('per_page: 20', "page: $page");
  16.     }
  17.  
  18.     public function show($id) {        
  19.         $this->obj = $this->ParteMaquina->find($id);
  20.     }
  21.  
  22.     public function create() {
  23.         if ($this->has_post('parte_maquina')) {
  24.             $obj = new ParteMaquina($this->post('parte_maquina'));
  25.  
  26.             $obj->version = 1;
  27.             if ($obj->save()) {
  28.                 Flash::notice('Operación Exitosa');
  29.                 Router::route_to('controller: parte_maquina','action: index','id: 1');
  30.             } else {
  31.                 Flash::error('No se Guardo!');
  32.                 $this->$obj = $obj;
  33.                 $this->render('create');
  34.             }
  35.         }
  36.     }
  37.  
  38.     public function edit($id=0) {
  39.  
  40.         if ($this->has_post('parte_maquina')) {
  41.             $obj = new ParteMaquina($this->post('parte_maquina'));
  42.             //$obj->version=  $this->ciudad->version+1;
  43.             if ($obj->update()) {
  44.                 Flash::notice('Operación Exitosa');
  45.                 Router::route_to('controller: parte_maquina','action: index','id: 1');
  46.             } else {
  47.                 Flash::error('No se Guardo!');
  48.                 $this->render('edit');
  49.             }
  50.         }else {
  51.             $this->obj = $this->ParteMaquina->find($id);
  52.         }
  53.     }
  54.  
  55.     public function delete($id=0) {
  56.         $obj  = $this->ParteMaquina->find($id);
  57.  
  58.         if($obj->delete()) {
  59.             Flash::notice('Operación Exitosa');
  60.         }else{
  61.             Flash::error('No se Eliminó!');
  62.         }
  63.  
  64.         Router::route_to('controller: parte_maquina','action: index','id: 1');
  65.     }
  66. }
  67. ?>

Las vistas

create.phtml

  1. <h1>Crear parte de máquina</h1>
  2. <?php View::content() ?>
  3.  
  4. <?php echo form_tag("parte_maquina/create")?>
  5.  
  6. <label for="parte_maquina_nombre">Nombre:</label>
  7.  
  8. <?php echo textupper_field_tag('parte_maquina.nombre') ?>
  9.  
  10. <?php echo submit_tag('Guardar') ?>
  11. <?php echo end_form_tag(); ?>