JoinModel
in package
Clase base de la que heredan todas las vistas de modelo.
Permite la visualización de datos de varias tablas de la base de datos. Este tipo de modelo es solo para lectura de datos, no permite la modificación o eliminación de datos directamente.
Se debe indicar un modelo principal ("master"), que será el responsable de ejecutar las acciones de modificación de datos. Esto significa que al insertar, modificar o eliminar, solo se realiza la operación sobre el modelo master indicado.
Table of Contents
Properties
- $dataBase : DataBase
- $masterModel : ModelClass
- $attributes : array<string|int, mixed>
Methods
- __construct() : mixed
- Constructor e inicializador de la clase.
- __get() : mixed
- Devuelve el valor del atributo indicado.
- __isset() : mixed
- Comprueba si existe el atributo indicado.
- __set() : mixed
- Asigna el valor al atributo indicado.
- all() : array<string|int, static>
- Devuelve todos los registros que cumplen las condiciones.
- clear() : void
- Restablece los valores de todos los atributos del modelo.
- count() : int
- Devuelve el número de registros que cumplen las condiciones.
- delete() : bool
- Elimina los datos del modelo master de la base de datos.
- exists() : bool
- Devuelve true si los datos del modelo existen en la base de datos.
- getModelFields() : array<string|int, mixed>
- id() : mixed
- Devuelve el valor de la clave primaria del modelo master.
- load() : bool
- Carga un registro del modelo utilizando el código de la clave primaria del master model.
- loadFromCode() : bool
- loadWhere() : bool
- Carga el primer registro que coincida con las condiciones especificadas.
- loadWhereEq() : bool
- primaryColumnValue() : mixed
- totalSum() : float
- url() : string
- Devuelve la URL donde ver o modificar los datos.
- db() : DataBase
- Devuelve la instancia de la base de datos actual.
- getFields() : array<string|int, mixed>
- Devuelve la lista de campos o columnas para la cláusula SELECT.
- getGroupFields() : string
- Devuelve los campos para la cláusula GROUP BY.
- getSQLFrom() : string
- Devuelve las tablas relacionadas para la cláusula FROM.
- getTables() : array<string|int, mixed>
- Devuelve la lista de tablas necesarias para la ejecución de la vista.
- loadFromData() : void
- Asigna los valores del array $data a los atributos del modelo.
- setMasterModel() : void
- Establece el modelo master para las operaciones de datos.
- checkTables() : bool
- Comprueba que existen todas las tablas necesarias.
- fieldsList() : string
- Convierte la lista de campos en una cadena para la cláusula SELECT.
- getGroupBy() : string
- Devuelve la cláusula GROUP BY.
- getOrderBy() : string
- Convierte un array de ordenamiento en una cláusula ORDER BY.
Properties
$dataBase
protected
static DataBase
$dataBase
$masterModel
protected
ModelClass
$masterModel
Modelo principal para las operaciones de datos.
$attributes
private
array<string|int, mixed>
$attributes
= []
Atributos del modelo.
Methods
__construct()
Constructor e inicializador de la clase.
public
__construct([array<string|int, mixed> $data = [] ]) : mixed
Parameters
- $data : array<string|int, mixed> = []
__get()
Devuelve el valor del atributo indicado.
public
__get(mixed $name) : mixed
Parameters
- $name : mixed
__isset()
Comprueba si existe el atributo indicado.
public
__isset(mixed $name) : mixed
Parameters
- $name : mixed
__set()
Asigna el valor al atributo indicado.
public
__set(mixed $name, mixed $value) : mixed
Parameters
- $name : mixed
- $value : mixed
all()
Devuelve todos los registros que cumplen las condiciones.
public
static all([array<string|int, Where> $where = [] ][, array<string|int, mixed> $order = [] ][, int $offset = 0 ][, int $limit = 0 ]) : array<string|int, static>
Parameters
- $where : array<string|int, Where> = []
- $order : array<string|int, mixed> = []
- $offset : int = 0
- $limit : int = 0
Return values
array<string|int, static>clear()
Restablece los valores de todos los atributos del modelo.
public
clear() : void
count()
Devuelve el número de registros que cumplen las condiciones.
public
static count([array<string|int, Where> $where = [] ]) : int
Parameters
- $where : array<string|int, Where> = []
Return values
intdelete()
Elimina los datos del modelo master de la base de datos.
public
delete() : bool
Return values
boolexists()
Devuelve true si los datos del modelo existen en la base de datos.
public
exists() : bool
Return values
boolgetModelFields()
public
getModelFields() : array<string|int, mixed>
Return values
array<string|int, mixed>id()
Devuelve el valor de la clave primaria del modelo master.
public
id() : mixed
load()
Carga un registro del modelo utilizando el código de la clave primaria del master model.
public
load(mixed $code) : bool
Parameters
- $code : mixed
Return values
boolloadFromCode()
public
loadFromCode(mixed $cod[, array<string|int, mixed> $where = [] ][, array<string|int, mixed> $orderby = [] ]) : bool
Usar load() cuando solo se necesita cargar por código, o loadWhere() cuando se requieren condiciones WHERE u ordenamiento adicionales.
Parameters
- $cod : mixed
- $where : array<string|int, mixed> = []
- $orderby : array<string|int, mixed> = []
Attributes
- #[Deprecated]
- $reason: 'Use load() or loadWhere() instead'
Return values
boolloadWhere()
Carga el primer registro que coincida con las condiciones especificadas.
public
loadWhere(array<string|int, Where> $where[, array<string|int, mixed> $order = [] ]) : bool
Parameters
- $where : array<string|int, Where>
- $order : array<string|int, mixed> = []
Return values
boolloadWhereEq()
public
loadWhereEq(string $field, mixed $value) : bool
Parameters
- $field : string
- $value : mixed
Return values
boolprimaryColumnValue()
public
primaryColumnValue() : mixed
Use id() instead
Attributes
- #[Deprecated]
- $reason: 'Use id() instead'
- $replacement: '%class%->id()'
totalSum()
public
totalSum(string $field[, array<string|int, mixed> $where = [] ]) : float
Parameters
- $field : string
- $where : array<string|int, mixed> = []
Return values
floaturl()
Devuelve la URL donde ver o modificar los datos.
public
url([string $type = 'auto' ][, string $list = 'List' ]) : string
Parameters
- $type : string = 'auto'
- $list : string = 'List'
Return values
stringdb()
Devuelve la instancia de la base de datos actual.
protected
static db() : DataBase
Return values
DataBasegetFields()
Devuelve la lista de campos o columnas para la cláusula SELECT.
protected
abstract getFields() : array<string|int, mixed>
Return values
array<string|int, mixed>getGroupFields()
Devuelve los campos para la cláusula GROUP BY.
protected
getGroupFields() : string
Return values
stringgetSQLFrom()
Devuelve las tablas relacionadas para la cláusula FROM.
protected
abstract getSQLFrom() : string
Return values
stringgetTables()
Devuelve la lista de tablas necesarias para la ejecución de la vista.
protected
abstract getTables() : array<string|int, mixed>
Return values
array<string|int, mixed>loadFromData()
Asigna los valores del array $data a los atributos del modelo.
protected
loadFromData(array<string|int, mixed> $data) : void
Parameters
- $data : array<string|int, mixed>
setMasterModel()
Establece el modelo master para las operaciones de datos.
protected
setMasterModel(mixed $model) : void
Parameters
- $model : mixed
checkTables()
Comprueba que existen todas las tablas necesarias.
private
checkTables() : bool
Return values
boolfieldsList()
Convierte la lista de campos en una cadena para la cláusula SELECT.
private
fieldsList() : string
Return values
stringgetGroupBy()
Devuelve la cláusula GROUP BY.
private
getGroupBy() : string
Return values
stringgetOrderBy()
Convierte un array de ordenamiento en una cláusula ORDER BY.
private
getOrderBy(array<string|int, mixed> $order) : string
Parameters
- $order : array<string|int, mixed>