Esta documentación pertenece a FacturaScripts 2017 y se considera obsoleta.
Por favor, consulta la nueva documentación desde la guía de programación
Por favor, consulta la nueva documentación desde la guía de programación
mi_modelo.php
Todos los modelos heredan de la nueva clase fsextendedmodel o fs_model, que es la que se encarga de comprobar la tabla y hacer los ajustes necesarios.
Ejemplo (mi_modelo.php)
Imaginemos una tabla llamada mi_tabla que tiene dos columnas: id (entero y clave primaria) y columna1, que es de tipo varchar(200). Este sería su modelo:
<?php
/// la clase se debe llamar igual que el archivo
class mi_modelo extends fs_extended_model
{
public $id;
public $columna1;
public function __construct($data = FALSE)
{
parent::__construct('mi_tabla', $data); /// aquí indicamos el NOMBRE DE LA TABLA
}
public function model_class_name()
{
return __CLASS__;
}
public function primary_column()
{
return 'id';
}
}
modelclassname()
Esta función debe devolver el nombre del modelo.
primary_column()
Esta función debe devolver el nombre de la columna que es clave primara, en este caso id.
Operaciones comunes con modelos
Los modelos que heredan de fsextendedmodel ya implementan las funciones más básicas de lectura, escritura, eliminación etc.
crear un nuevo registro de mi_modelo
$mi_modelo = new mi_modelo();
$mi_modelo->id = 1234;
$mi_modelo->columna1 = 'articulo 1234';
$mi_modelo->save();
Cargar y modificar un registro del que conocemos el id:
$mi_modelo = new mi_modelo();
if( $mi_modelo->load_from_code($id) ) {
/// registro encontrado y cargado, ya podemos modificarlo
$mi_modelo->columna1 = '10';
/// guardamos
$mi_modelo->save();
}
Eliminar un registro del que conocemos su id
$mi_modelo = new mi_modelo();
if( $mi_modelo->load_from_code($id) ) {
if($mi_modelo->delete()) {
/// se ha eliminado
} else {
/// no se ha podido eliminar
}
} else {
/// no lo hemos encontrado
}