Programador Web & SEO – Madrid

Eliminar columnas de fechas created_at y updated_at en laravel

laravel-fechas

laravel-fechas

Si alguna vez habéis trabajado con Laravel sabéis que este incluye su propio sistema de ORM (Object-Relational Mapping) llamado Eloquent, el cual nos proporciona una manera elegante y fácil de trabajar con la base de datos.

Cuando creamos un modelo en Laravel:

namespace App;

use Illuminate\Database\Eloquent\Model;

class Usuarios extends Model
{
    //...
}

o usamos la linea de comandos

php artisan make:model Usuarios

Por defecto, Eloquent asume que todas las tablas contienen los campos updated_at y created_at. Estos campos se actualizarán automáticamente cuando se cree un nuevo registro o se modifique.

Pero…., ¿Y si no queremos que estos datos estén en nuestra tabla?

Bien para eliminar las dos columnas y que no nos de errores las inserciones o las actualizaciones usando esos modelos. Basta con añadir la siguiente línea a nuestro modelo.

public $timestamps = false;

Aquí os pongo el modelo completo

namespace App;

use Illuminate\Database\Eloquent\Model;

class Usuarios extends Model
{
    protected $table = 'tbl_usuario';
    public $timestamps = false;
}

Hasta aquí, todo correcto pero y si queremos tener sólo la columna de created_at y eliminar la fecha de actualización.

La solución pasa por poner a Null esta fecha…, podéis verlo en el código

namespace App;

use Illuminate\Database\Eloquent\Model;

class Usuarios extends Model
{
    const UPDATED_AT = null;
    protected $table = 'tbl_usuario';
    
}

Con esto eliminaríamos de nuestra tabla la columna y podríamos generar nuevos usuarios ya actualizarlos sin problema.
Saludos a todos

Eliminar columnas de fechas created_at y updated_at en laravel Modificado: julio 11th, 2018 por Carlos González Gurrea
Salir de la versión móvil