$modelo->clear()
El método clear() 'limpia' las propiedades del modelo y asigna valores por defecto. Se ejecuta automáticamente en el constructor del modelo, lo que significa que cada vez que se crea una nueva instancia de un modelo utilizando new, también se ejecuta clear() para asignar los valores predeterminados.
Personalización en el modelo
Por defecto, este método asigna el valor null a todas las propiedades del modelo, pero podemos sobrescribirlo en nuestro modelo para asignar otros valores. Por ejemplo, si tenemos una propiedad llamada creation_date, podemos asignar la fecha y hora actual en este método:
public function clear(): void
{
parent::clear();
$this->creation_date = Tools::dateTime();
}
Otros usos
Este método también se puede utilizar para crear varios registros utilizando un mismo objeto. Ejemplo:
// Creamos un nuevo producto
$product = new Producto();
$product->referencia = $product->descripcion = 'test';
$product->save();
// Ahora utilizamos clear() para usar el mismo objeto y crear un nuevo producto
$product->clear();
$product->referencia = $product->descripcion = 'test2';
$product->save();
En este ejemplo, hemos creado dos productos utilizando el mismo objeto. Aunque la utilidad de este enfoque puede ser limitada, es importante conocer sus posibilidades.