🛢️ Modelo
Modelos
Los modelos son las clases que forman la capa empresarial en su aplicación. Deben ser responsables de administrar casi todo lo relacionado con sus datos, su validez y sus interacciones.
Generalmente, las clases modelo representan datos y se usan en las aplicaciones de Ligne para el acceso a datos. Pueden usarse para acceder a cualquier cosa que manipule datos, como archivos, servicios web externos.
Como funcionan los modelos
Un modelo representa su modelo de datos. En la programación orientada a objetos, un modelo de datos es un objeto que representa una cosa como una persona o una casa.
Un blog, por ejemplo, puede tener muchas publicaciones y cada publicación del blog puede tener muchos comentarios. El Blog, Publicación y Comentario son todos ejemplos de modelos, cada uno asociado con otro.
Aquí hay un ejemplo simple de una definición de modelo en Ligne:
Para poder trabajar con el modelo Tasks
, se crea el archivo PHP en el directorio src/models/Tasks/
. Por convención, debería tener el mismo nombre que la clase, para este ejemplo será Tasks.php
Esta clase debe contener un namespace
ya que este se utiliza para incluir el modelo en donde sea necesario su uso. El namespace
no es más que el directorio con barras invertidas donde está el modelo, por ejemplo, en nuestro caso el modelo está en el directorio src/models/Tasks/
Recuperar datos Pdox
El generador de consultas Pdox proporciona una interfaz fluida fácil de usar para crear y ejecutar consultas. Al componer las consultas juntas, puede crear consultas avanzadas utilizando uniones y subconsultas con facilidad.
Debajo de las capas, el generador de consultas utiliza declaraciones preparadas con PDO que protegen contra ataques de inyección SQL
Ejemplo de selección un único registro
Podemos obtener un registro con el método get()
veamos un ejemplo de consulta por un criterio en concreto;
La sintaxis es sumamente sencilla, tenemos un método db()
el cual nos proporciona una conexión nueva a la base de datos, luego de esto es aquí donde entra la magia de Pdox (Query Builder) el mismo nos proporciona una serie de métodos que nos facilitaran la vida.
La salida de esta consulta seria;
GetAll()
Así como realizamos consultas de registros individuales, podemos hacer consultas de un conglomerado de registros con el método getAll()
. En este caso obtendremos todas las tareas que su valor success sea igual a 0 y ordenaremos estos registros por created_at de manera descendente;
Salida;
Insertando datos
A diferencia de los ejemplos anteriores, no debe utilizar get()
ni getAll()
para crear consultas de inserción. En lugar de esto creamos un arreglo asociativo el cual puede ser como el ejemplo a continuación;
Este arreglo es pasado al método insert()
de la siguiente manera;
Puedes obtener el id insertado con una simple línea luego de realizada la inserción de datos;
Actualizando registros
Como vimos en el ejemplo se inserción de datos en el caso de actualizar tampoco usaremos los métodos get()
y getAll()
en lugar de esto usaremos update()
;
Crearemos un arreglo asociativo como en el ejemplo anterior, esta vez solo con los datos que se actualizarán, no es necesario enviar todos los campos;
En este caso como actualizaremos un registro por su id debemos usar el método where()
seguido del método update()
, a este ultimo le pasamos nuestro arreglo.
Eliminar registros
Es mas sencillo eliminar registros ya que en esta ocasión no necesitamos crear ningún arreglo, esto es tan sencillo como especificar con el método where()
los criterios;
Consultas método Query
También puedes realizar consultas SQL utilizando el método query()
Se recomienda utilizar los método del Query Builder en todos los casos ya que tienes una sintaxis más organizada y legible, inclusive escalable.
Resumen
En general es mas sencillo que las consultas anteriores. En esta sección solo veremos consultas simples como las anteriores, para ampliar más puede visitar la documentación del Query Builder Query Builder
Last updated