Skip to content

Instantly share code, notes, and snippets.

@yickson
Last active May 29, 2021 00:46
Show Gist options
  • Save yickson/344cd9107635a8100df507e0abfb1edf to your computer and use it in GitHub Desktop.
Save yickson/344cd9107635a8100df507e0abfb1edf to your computer and use it in GitHub Desktop.
Documentación del LiteRecord KumbiaPHP

Documentación de LiteRecord de KumbiaPHP

LiteRecord es el ActiveRecord ligero y simple que se pone a disposición de los programadores que quieran un ORM, super ligero, rápido y potente.

Los métodos que tiene son como todo ORM, listar, buscar por un registro en particular, editar o actualizar y eliminar, así como la posibilidad de realizar consultas personalizadas cuando así se requiera.

Se agregará un ejemplo de como realizarlo con Autocarga según la convención de KumbiaPHP.

Métodos

Metodo para consultar todos los registros

<?php

class UsuariosController extends AppController
{
  public function index()
  {
    $usuarios = Usuarios::all();
  }
  

Este método traerá todos los registros de la tabla Usuarios en dado caso solo debemos acceder a ellos en función de un objeto es decir $usuarios->nombre

Método para consultar un solo registro según llave primaria

<?php

class UsuariosController extends AppController
{
  public function index()
  {
    $usuario = Usuarios::get($id); //Siendo $id el valor del identificador en nuestra respectiva tabla
  }
  

Este método retorna un solo registro según la clave primaria de la respectiva tabla

Metodo para crear un registro

Controlador de usuario

<?php

class UsuariosController extends AppController
{
  public function crear()
  {
    if(Input::hasPost('nombre')){
      $respuesta = (New Usuarios)->create(Input::post('usuario')); //Debe cumplir con la convención
      Flash::valid('Registro exitoso');
    }else{
      Flash::error('Error en el registro de usuario');
    }
  }
  

Vista del formulario para crear usuario

<div>
  <?php echo Form::open() ?>
  <label>Nombre</label>
  <input name="usuario[nombre]"/>
  <label>Correo</label>
  <input name="usuario[correo]"/>
  <br>
  <input type="submit" value="Registrar">
  <?php echo Form::close() ?>
</div>

Método para editar un registro

Controlador de usuario

<?php

class UsuariosController extends AppController
{
  public function editar($id)
  {
    if(Input::hasPost('nombre')){
      $respuesta = (New Usuarios)->update(Input::post('usuario')); //Debe cumplir con la convención
      Flash::valid('Registro exitoso');
    }else{
      Flash::error('Error en el registro de usuario');
    }
    $this->usuario = Usuario::get($id); //Pasamos el usuario a la vista
  }

Vista del formulario para editar usuario

<div>
  <?php echo Form::open() ?>
  <input type="hidden" value="<?php echo $usuario->id ?>"
  <label>Nombre</label>
  <input name="usuario[nombre]" value="<?php echo $usuario->nombre ?>"/>
  <label>Correo</label>
  <input name="usuario[correo]" value="<?php echo $usuario->correo ?>"/>
  <br>
  <input type="submit" value="Editar">
  <?php echo Form::close() ?>
</div>

Método para eliminar un registro

Controlador de usuario

<?php

class UsuariosController extends AppController
{
  public function eliminar($id)
  {
    $resp = Usuario::delete($id);
    if($resp){
      Redirect::to();
    }else{
      Flash::error('No se pudo eliminar el usuario');
    }
  }

Modelo en nuestra carpeta del Proyecto

<?php

require_once ('../../vendor/autoload.php'); //Nuestra carga

class Usuarios extends LiteRecord
{

  public function crear($nombre, $edad, $correo)
  {
    $usuario = New Usuarios;
    $usuario->nombre = $nombre;
    $usuario->edad = $edad;
    $usuario->correo = $correo;
    
    if($usuario->save())
    {
      return true;
    }else{
      return false;
    }
  }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment