En el FSDK, si creas a partir de una tabla datos de ejemplo, en el controlador, el primer if($d) del constructor no entiendo para que sirve. (disculpad si es una pregunta tonta)

Ejemplo

public function __construct($d=FALSE)
{
parent::__construct('j_extractos');
if($d)
{
$this->id = $d['id'];
$this->fecha_oper = date("d-m-Y", strtotime($d['fecha_oper']));
$this->concepto = $d['concepto'];
$this->importe = $d['importe'];
$this->saldo = $d['saldo'];
$this->ref_1 = $d['ref_1'];
$this->ref_2 = $d['ref_2'];
$this->tipo = $d['tipo'];
$this->incidencia = $d['incidencia'];
$this->comentarios = $d['comentarios'];
$this->estado = $d['estado'];
$this->clasificacion = $d['clasificacion'];
$this->revisado = $this->str2bool($d['revisado']);
$this->presentado = $this->str2bool($d['presentado']);
}
else
{
/// valores predeterminados
$this->id = NULL;
$this->fecha_oper = date('d-m-Y');
$this->concepto = NULL;
$this->importe = NULL;
$this->saldo = NULL;
$this->ref_1 = NULL;
$this->ref_2 = NULL;
$this->tipo = NULL;
$this->incidencia = NULL;
$this->comentarios = NULL;
$this->estado = NULL;
$this->clasificacion = NULL;
$this->revisado = FALSE;
$this->presentado = FALSE;
}
}
Plugin: FSDK
hace 3 meses   NeoRazorX   admin

Ese constructor sirve tanto para crear un elemento nuevo como para cargar uno existente, si le pasas los datos.

Si te fijas en la función get($id) de cada modelo, lee de la tabla y si encuentra algo no lo devuelve tal cual, llama a new clase($datos[0]), es decir, llama al constructor de la clase y le pasa la primera fila de resultados. Lo mismo con las funciones all(), que leen una a una las filas y las meten en un array, pero no los datos en bruto, sino new clase($fila).

Saludos.

hace 3 meses   tengoun_103

Ok, ahora lo entiendo. Es decir más que para el "listado" de los datos de una tabla, el if($d) lo usamos principalmente para por ejemplo ampliar y mostrar los detalles de un resultado no?

hace 3 meses   NeoRazorX   admin

Cuando hacemos un new de una clase, obtenemos un objeto de esa clase con unos valores por defecto. ¿Y si no queremos un objeto nuevo? ¿Y si queremos uno que ya existe? No podemos decirle a mysql que nos devuelve un objeto que nos de la gana, mysql devuelve datos en bruto. Hay que coger esos datos y rellenar el objeto, para eso está ese if.

hace 1 semana   -   cron

[[Cerrado por inactividad]]

No se pueden hacer más comentarios. Mejor escribe una nueva pregunta

tengoun@gmail.com

¿Necesita soporte o asesoramiento profesional?

Si necesita soporte o asesoramiento personalizado, más directo e inmediato contacte con su Partner más cercano.

Nuevo diseño ya disponible

Hemos trabajado duro para traer un nuevo diseño más moderno a FacturaScripts, y puedes conseguirlo muy fácilmente en la sección promo.

  Promo