Page
extends ModelClass
in package
uses
ModelTrait
Element of the menu of InvoiceScripts, each corresponds to a controller.
Table of Contents
Properties
- $icon : mixed
- Icono utilizado para representar la página.
- $menu : mixed
- Título de la opción principal del menú donde se muestra la página.
- $name : mixed
- Nombre del controlador asociado a la página.
- $ordernum : mixed
- Posición de la página dentro del menú.
- $showonmenu : mixed
- Indica si la página se muestra en el menú.
- $submenu : mixed
- Título del submenú donde se muestra la página.
- $title : mixed
- Título de la página.
- $attributes : array<string|int, mixed>
- The model's attributes.
- $dataBase : DataBase
- It provides direct access to the database.
- $fields : array<string|int, mixed>
- Lista de campos de la tabla del modelo.
- $original : array<string|int, mixed>
- The model's original attributes.
Methods
- __construct() : mixed
- Inicializa el modelo, comprueba su tabla y carga los datos proporcionados.
- __get() : mixed
- Devuelve el valor de un atributo dinámico.
- __isset() : bool
- Comprueba si existe un atributo dinámico con valor no nulo.
- __set() : void
- Asigna el valor de un atributo dinámico.
- __unset() : void
- Elimina un atributo dinámico.
- addApiFieldToHide() : void
- Añade un campo a la lista de campos que no deben exponerse en la API.
- addExtension() : void
- Añade una extensión al modelo con la prioridad indicada.
- all() : array<string|int, static>
- Devuelve todos los registros que cumplen las condiciones.
- allWhereEq() : array<string|int, static>
- Devuelve todos los registros donde el campo es igual al valor.
- changeId() : bool
- Cambia el valor de la clave primaria del registro.
- changePrimaryColumnValue() : bool
- Cambia el valor de la clave primaria del registro.
- clear() : void
- Restablece los campos del modelo a sus valores predeterminados.
- clearCache() : void
- Elimina de la caché los datos relacionados con el modelo y su tabla.
- count() : int
- countWhereEq() : int
- Cuenta los registros donde el campo es igual al valor.
- create() : static|null
- delete() : bool
- Elimina el registro actual de la base de datos.
- deleteWhere() : bool
- exists() : bool
- Comprueba si el registro actual existe en la base de datos.
- find() : static|null
- findOrCreate() : static|null
- findWhere() : static|null
- findWhereEq() : static|null
- get() : static|false
- Busca un registro mediante su clave primaria y devuelve una nueva instancia.
- getApiFieldsToHide() : array<string|int, string>
- Devuelve los nombres de campos que no deben exponerse en la API (ni en GET, ni en el schema). Los modelos con datos sensibles deben sobrescribir este método fusionando con parent::getApiFieldsToHide().
- getDirty() : array<string|int, mixed>
- Devuelve un array asociativo con los campos modificados y sus valores actuales.
- getModelFields() : array<string|int, mixed>
- Returns the list of fields in the table.
- getOriginal() : mixed|null
- Devuelve el valor original de un campo, si no se indica campo devuelve todo el array original
- hasChanged() : bool
- hasColumn() : bool
- Comprueba si el modelo contiene la columna indicada.
- hasExtension() : bool
- Comprueba si el modelo tiene registrada la extensión indicada.
- id() : mixed
- Devuelve el valor de la clave primaria del modelo.
- install() : string
- Devuelve el SQL inicial necesario para instalar los datos del modelo.
- isDirty() : bool
- Comprueba si los campos del modelo han sido modificados.
- load() : bool
- Carga un modelo dada su primary key
- loadFromCode() : bool
- Carga un registro del modelo utilizando un código y opcionalmente condiciones adicionales.
- loadFromData() : void
- Carga los campos y atributos del modelo desde un array.
- loadWhere() : bool
- Carga el primer registro que coincida con las condiciones especificadas.
- loadWhereEq() : bool
- Carga el primer registro cuyo campo coincide con el valor indicado.
- maxLength() : int
- Devuelve la longitud máxima de un campo de texto, o 0 si no tiene límite o no es un campo de texto.
- modelClassName() : string
- Returns the name of the class of the model.
- newCode() : int
- Calcula el siguiente código numérico disponible para un campo.
- pipe() : mixed
- Ejecuta las extensiones asociadas al punto indicado y devuelve su resultado.
- pipeFalse() : bool
- Ejecuta las extensiones y devuelve false si alguna cancela la operación.
- primaryColumn() : string
- Devuelve el nombre de la columna que actúa como clave primaria.
- primaryColumnValue() : mixed
- Devuelve el valor de la clave primaria del modelo.
- primaryDescription() : mixed
- Devuelve la descripción principal del registro.
- primaryDescriptionColumn() : string
- Devuelve el nombre de la columna utilizada como descripción principal.
- reload() : bool
- Vuelve a cargar desde la base de datos el registro actual.
- save() : bool
- Guarda el modelo en la base de datos después de ejecutar las comprobaciones `$this->test()`
- syncOriginal() : void
- Sincroniza los valores actuales con la copia original del modelo.
- table() : DbQuery
- tableName() : string
- Devuelve el nombre de la tabla asociada al modelo.
- test() : bool
- Realiza pruebas de validación sobre los campos del modelo antes de guardarlo.
- toArray() : array<string|int, mixed>
- Devuelve un array con los campos y valores del modelo.
- totalSum() : float
- update() : bool
- Actualiza el modelo con los valores proporcionados en el array
- updateOrCreate() : static|null
- url() : string
- Genera una URL para el modelo según el tipo especificado.
- belongsTo() : object|null
- Define una relación uno a uno.
- db() : DataBase
- hasMany() : array<string|int, mixed>
- Define una relación uno a muchos.
- loadModelFields() : void
- onChange() : bool
- Comprueba un campo modificado antes de actualizar el registro.
- onDelete() : void
- Este método se llama al eliminar un registro de la base de datos.
- onInsert() : void
- Este método se llama al insertar un nuevo registro en la base de datos (saveInsert).
- onUpdate() : void
- Este método se llama al actualizar un registro en la base de datos.
- saveInsert() : bool
- Inserta un nuevo registro en la base de datos.
- saveUpdate() : bool
- Este método se llama al actualizar un registro existente en la base de datos.
Properties
$icon
Icono utilizado para representar la página.
public
mixed
$icon
@var string
$menu
Título de la opción principal del menú donde se muestra la página.
public
mixed
$menu
@var string
$name
Nombre del controlador asociado a la página.
public
mixed
$name
@var string
$ordernum
Posición de la página dentro del menú.
public
mixed
$ordernum
@var int
$showonmenu
Indica si la página se muestra en el menú.
public
mixed
$showonmenu
@var bool
$submenu
Título del submenú donde se muestra la página.
public
mixed
$submenu
@var string
$title
Título de la página.
public
mixed
$title
@var string
$attributes
The model's attributes.
protected
array<string|int, mixed>
$attributes
= []
$dataBase
It provides direct access to the database.
protected
static DataBase
$dataBase
$fields
Lista de campos de la tabla del modelo.
protected
static array<string|int, mixed>
$fields
= []
$original
The model's original attributes.
protected
array<string|int, mixed>
$original
= []
Methods
__construct()
Inicializa el modelo, comprueba su tabla y carga los datos proporcionados.
public
__construct([array<string|int, mixed> $data = [] ]) : mixed
Parameters
- $data : array<string|int, mixed> = []
__get()
Devuelve el valor de un atributo dinámico.
public
__get(string $key) : mixed
Parameters
- $key : string
__isset()
Comprueba si existe un atributo dinámico con valor no nulo.
public
__isset(string $key) : bool
Parameters
- $key : string
Return values
bool__set()
Asigna el valor de un atributo dinámico.
public
__set(string $key, mixed $value) : void
Parameters
- $key : string
- $value : mixed
__unset()
Elimina un atributo dinámico.
public
__unset(string $key) : void
Parameters
- $key : string
addApiFieldToHide()
Añade un campo a la lista de campos que no deben exponerse en la API.
public
static addApiFieldToHide(string $field) : void
Solo permite añadir: los campos ocultos por el core no se pueden quitar.
Parameters
- $field : string
addExtension()
Añade una extensión al modelo con la prioridad indicada.
public
abstract static addExtension(mixed $extension[, int $priority = 100 ]) : void
Parameters
- $extension : mixed
- $priority : int = 100
all()
Devuelve todos los registros que cumplen las condiciones.
public
static all([array<string|int, mixed> $where = [] ][, array<string|int, mixed> $order = [] ][, int $offset = 0 ][, int $limit = 0 ]) : array<string|int, static>
Parameters
- $where : array<string|int, mixed> = []
- $order : array<string|int, mixed> = []
- $offset : int = 0
- $limit : int = 0
Return values
array<string|int, static>allWhereEq()
Devuelve todos los registros donde el campo es igual al valor.
public
static allWhereEq(string $field, mixed $value[, array<string|int, mixed> $order = [] ]) : array<string|int, static>
Parameters
- $field : string
- $value : mixed
- $order : array<string|int, mixed> = []
Return values
array<string|int, static>changeId()
Cambia el valor de la clave primaria del registro.
public
changeId(mixed $new_id) : bool
Parameters
- $new_id : mixed
Return values
boolchangePrimaryColumnValue()
Cambia el valor de la clave primaria del registro.
public
changePrimaryColumnValue(mixed $new_id) : bool
replace with changeId()
Parameters
- $new_id : mixed
Return values
boolclear()
Restablece los campos del modelo a sus valores predeterminados.
public
clear() : void
clearCache()
Elimina de la caché los datos relacionados con el modelo y su tabla.
public
clearCache() : void
count()
public
static count([array<string|int, mixed> $where = [] ]) : int
Parameters
- $where : array<string|int, mixed> = []
Return values
intcountWhereEq()
Cuenta los registros donde el campo es igual al valor.
public
static countWhereEq(string $field, mixed $value) : int
Parameters
- $field : string
- $value : mixed
Return values
intcreate()
public
static create(array<string|int, mixed> $data) : static|null
Parameters
- $data : array<string|int, mixed>
Return values
static|nulldelete()
Elimina el registro actual de la base de datos.
public
delete() : bool
Return values
booldeleteWhere()
public
static deleteWhere(array<string|int, mixed> $where) : bool
Parameters
- $where : array<string|int, mixed>
Return values
boolexists()
Comprueba si el registro actual existe en la base de datos.
public
exists() : bool
Return values
boolfind()
public
static find(mixed $code) : static|null
Parameters
- $code : mixed
Return values
static|nullfindOrCreate()
public
static findOrCreate(array<string|int, mixed> $where[, array<string|int, mixed> $data = [] ]) : static|null
Parameters
- $where : array<string|int, mixed>
- $data : array<string|int, mixed> = []
Return values
static|nullfindWhere()
public
static findWhere(array<string|int, mixed> $where[, array<string|int, mixed> $order = [] ]) : static|null
Parameters
- $where : array<string|int, mixed>
- $order : array<string|int, mixed> = []
Return values
static|nullfindWhereEq()
public
static findWhereEq(string $field, mixed $value) : static|null
Parameters
- $field : string
- $value : mixed
Return values
static|nullget()
Busca un registro mediante su clave primaria y devuelve una nueva instancia.
public
get(mixed $code) : static|false
Use find() instead
Parameters
- $code : mixed
Return values
static|falsegetApiFieldsToHide()
Devuelve los nombres de campos que no deben exponerse en la API (ni en GET, ni en el schema). Los modelos con datos sensibles deben sobrescribir este método fusionando con parent::getApiFieldsToHide().
public
getApiFieldsToHide() : array<string|int, string>
Return values
array<string|int, string>getDirty()
Devuelve un array asociativo con los campos modificados y sus valores actuales.
public
getDirty() : array<string|int, mixed>
Return values
array<string|int, mixed>getModelFields()
Returns the list of fields in the table.
public
getModelFields() : array<string|int, mixed>
Return values
array<string|int, mixed>getOriginal()
Devuelve el valor original de un campo, si no se indica campo devuelve todo el array original
public
getOriginal([string|null $key = null ]) : mixed|null
Parameters
- $key : string|null = null
Return values
mixed|null —Devuelve el valor original del campo o null si no existe
hasChanged()
public
hasChanged(string $field) : bool
replace with isDirty()
Parameters
- $field : string
Return values
boolhasColumn()
Comprueba si el modelo contiene la columna indicada.
public
hasColumn(string $columnName) : bool
Parameters
- $columnName : string
Return values
boolhasExtension()
Comprueba si el modelo tiene registrada la extensión indicada.
public
abstract hasExtension(mixed $extension) : bool
Parameters
- $extension : mixed
Return values
boolid()
Devuelve el valor de la clave primaria del modelo.
public
id() : mixed
install()
Devuelve el SQL inicial necesario para instalar los datos del modelo.
public
install() : string
Return values
stringisDirty()
Comprueba si los campos del modelo han sido modificados.
public
isDirty([string|null $key = null ]) : bool
Devuelve true si hay cambios, false en caso contrario.
Si introduces un parámetro key, comprueba solo ese campo
Parameters
- $key : string|null = null
Return values
bool —true si ha sido modificado, false en caso contrario
load()
Carga un modelo dada su primary key
public
load(mixed $code) : bool
Parameters
- $code : mixed
-
Código o identificador del registro a cargar
Return values
bool —Devuelve true si se encontró y cargó un registro exitosamente.
loadFromCode()
Carga un registro del modelo utilizando un código y opcionalmente condiciones adicionales.
public
loadFromCode(mixed $code[, array<string|int, mixed> $where = [] ][, array<string|int, mixed> $order = [] ]) : bool
Usar load() cuando solo se necesita cargar por código, o loadWhere() cuando se requieren condiciones WHERE u ordenamiento adicionales.
IMPORTANTE: Este método está deprecado. Se recomienda usar las alternativas siguientes:
- Si solo se proporciona $code: usar directamente load($code)
- Si se proporciona $code junto con $where o $order: usar loadWhere() con las condiciones apropiadas
Este método actúa como wrapper que redirige a load() cuando solo se proporciona el código, o a loadWhere() cuando se incluyen condiciones WHERE u ordenamiento adicionales.
Parameters
- $code : mixed
-
Código o identificador del registro a cargar. Se usa únicamente cuando no se proporcionan condiciones WHERE adicionales.
- $where : array<string|int, mixed> = []
-
Array de instancias de Where o DatabaseWhere que definen condiciones de filtrado adicionales. Si se proporciona, el método delega a loadWhere(). Por defecto es un array vacío.
- $order : array<string|int, mixed> = []
-
Array asociativo que define el ordenamiento de los resultados. Las claves son nombres de columnas y los valores la dirección del ordenamiento. Por defecto es un array vacío.
Return values
bool —Retorna true si se encontró y cargó un registro exitosamente. Retorna false si no se encontró ningún registro.
loadFromData()
Carga los campos y atributos del modelo desde un array.
public
loadFromData([array<string|int, mixed> $data = [] ][, array<string|int, mixed> $exclude = [] ][, bool $sync = true ]) : void
Parameters
- $data : array<string|int, mixed> = []
- $exclude : array<string|int, mixed> = []
-
Campos que no se deben cargar.
- $sync : bool = true
-
Indica si se deben sincronizar los valores originales.
loadWhere()
Carga el primer registro que coincida con las condiciones especificadas.
public
loadWhere(array<string|int, mixed> $where[, array<string|int, mixed> $order = [] ]) : bool
Este método consulta la tabla asociada al modelo aplicando las condiciones WHERE proporcionadas y el ordenamiento especificado. Si encuentra un registro, carga sus datos en la instancia actual del modelo. Si no encuentra ningún registro, limpia la instancia y retorna false.
Parameters
- $where : array<string|int, mixed>
-
Array de instancias de Where o DatabaseWhere que definen las condiciones de filtrado para la consulta. Cada elemento representa una condición que debe cumplir el registro a cargar.
- $order : array<string|int, mixed> = []
-
Array asociativo que define el ordenamiento de los resultados. Las claves son nombres de columnas y los valores indican la dirección del ordenamiento (ej: ['id' => 'DESC', 'nombre' => 'ASC']). Por defecto es un array vacío (sin ordenamiento específico).
Return values
bool —Retorna true si se encontró y cargó un registro exitosamente. Retorna false si no se encontró ningún registro que cumpla las condiciones.
loadWhereEq()
Carga el primer registro cuyo campo coincide con el valor indicado.
public
loadWhereEq(string $field, mixed $value) : bool
Parameters
- $field : string
- $value : mixed
Return values
boolmaxLength()
Devuelve la longitud máxima de un campo de texto, o 0 si no tiene límite o no es un campo de texto.
public
maxLength(string $field) : int
Parameters
- $field : string
-
Nombre del campo
Return values
int —Longitud máxima del campo
modelClassName()
Returns the name of the class of the model.
public
modelClassName() : string
Return values
stringnewCode()
Calcula el siguiente código numérico disponible para un campo.
public
newCode([string $field = '' ][, array<string|int, mixed> $where = [] ]) : int
Parameters
- $field : string = ''
- $where : array<string|int, mixed> = []
Return values
intpipe()
Ejecuta las extensiones asociadas al punto indicado y devuelve su resultado.
public
abstract pipe(mixed $name, mixed ...$arguments) : mixed
Parameters
- $name : mixed
- $arguments : mixed
pipeFalse()
Ejecuta las extensiones y devuelve false si alguna cancela la operación.
public
abstract pipeFalse(mixed $name, mixed ...$arguments) : bool
Parameters
- $name : mixed
- $arguments : mixed
Return values
boolprimaryColumn()
Devuelve el nombre de la columna que actúa como clave primaria.
public
static primaryColumn() : string
Return values
stringprimaryColumnValue()
Devuelve el valor de la clave primaria del modelo.
public
primaryColumnValue() : mixed
Use id() instead
Attributes
- #[Deprecated]
- $reason: 'Use id() instead'
- $replacement: '%class%->id()'
primaryDescription()
Devuelve la descripción principal del registro.
public
primaryDescription() : mixed
primaryDescriptionColumn()
Devuelve el nombre de la columna utilizada como descripción principal.
public
primaryDescriptionColumn() : string
Return values
stringreload()
Vuelve a cargar desde la base de datos el registro actual.
public
reload() : bool
Return values
boolsave()
Guarda el modelo en la base de datos después de ejecutar las comprobaciones `$this->test()`
public
save() : bool
Return values
bool —Devuelve true si se ha guardado correctamente, false en caso contrario
syncOriginal()
Sincroniza los valores actuales con la copia original del modelo.
public
syncOriginal() : void
table()
public
static table() : DbQuery
Return values
DbQuerytableName()
Devuelve el nombre de la tabla asociada al modelo.
public
static tableName() : string
Return values
stringtest()
Realiza pruebas de validación sobre los campos del modelo antes de guardarlo.
public
test() : bool
Return values
bool —Devuelve true si todas las pruebas pasan, false en caso contrario
toArray()
Devuelve un array con los campos y valores del modelo.
public
toArray([bool $dynamic_attributes = false ]) : array<string|int, mixed>
Parameters
- $dynamic_attributes : bool = false
-
Si es true, añade también los atributos dinámicos al array resultante
Return values
array<string|int, mixed> —Array asociativo con los campos y valores del modelo
totalSum()
public
static totalSum(string $field[, array<string|int, mixed> $where = [] ]) : float
Parameters
- $field : string
- $where : array<string|int, mixed> = []
Return values
floatupdate()
Actualiza el modelo con los valores proporcionados en el array
public
update(array<string|int, mixed> $values) : bool
Parameters
- $values : array<string|int, mixed>
-
Array asociativo con los campos y valores a actualizar
Return values
bool —Devuelve true si la actualización se ha realizado correctamente, false en caso
updateOrCreate()
public
static updateOrCreate(array<string|int, mixed> $where, array<string|int, mixed> $data) : static|null
Parameters
- $where : array<string|int, mixed>
- $data : array<string|int, mixed>
Return values
static|nullurl()
Genera una URL para el modelo según el tipo especificado.
public
url([string $type = 'auto' ][, string $list = 'List' ]) : string
Parameters
- $type : string = 'auto'
-
Tipo de URL a generar. Puede ser 'auto', 'edit', 'list' o 'new'.
- $list : string = 'List'
-
Nombre de la lista a utilizar en la URL cuando el tipo es 'list' o 'auto'.
Return values
string —URL generada para el modelo
belongsTo()
Define una relación uno a uno.
protected
belongsTo(string $modelName, string $foreignKey) : object|null
Parameters
- $modelName : string
- $foreignKey : string
Return values
object|nulldb()
protected
abstract static db() : DataBase
Return values
DataBasehasMany()
Define una relación uno a muchos.
protected
hasMany(string $modelName, string $foreignKey[, array<string|int, mixed> $where = [] ][, array<string|int, mixed> $order = [] ][, bool $cached = false ]) : array<string|int, mixed>
Parameters
- $modelName : string
- $foreignKey : string
- $where : array<string|int, mixed> = []
- $order : array<string|int, mixed> = []
- $cached : bool = false
-
usar solo en relaciones de solo lectura y de listas pequeñas y cerradas
Return values
array<string|int, mixed>loadModelFields()
protected
loadModelFields() : void
onChange()
Comprueba un campo modificado antes de actualizar el registro.
protected
onChange(string $field) : bool
Parameters
- $field : string
Return values
boolonDelete()
Este método se llama al eliminar un registro de la base de datos.
protected
onDelete() : void
onInsert()
Este método se llama al insertar un nuevo registro en la base de datos (saveInsert).
protected
onInsert() : void
onUpdate()
Este método se llama al actualizar un registro en la base de datos.
protected
onUpdate() : void
saveInsert()
Inserta un nuevo registro en la base de datos.
protected
saveInsert() : bool
Return values
boolsaveUpdate()
Este método se llama al actualizar un registro existente en la base de datos.
protected
saveUpdate() : bool
Return values
bool —Devuelve true si la actualización se realizó correctamente, false en caso contrario