Change created_at and updated_at names to other fields

Let’s imagine a scenario where you have an old database and re-writing codebase to Laravel. Database structure may not follow Laravel standards – created_at and updated_at fields are named differently. How can you “tell it to Laravel”?

For example, if your fields are called create_time and update_time, here’s what you do in migration:

Schema::create('movies', function (Blueprint $table) {

And then, apparently, it’s pretty simple – you can override the names of these fields in your model.

class Movie extends Model
    const CREATED_AT = 'create_time';
    const UPDATED_AT = 'update_time';

And here you don’t need any more mutators or attributes – these two fields will work exactly with the same auto-fill and auto-update logic as Laravel’s native ones.

Like our articles?
Check out our Laravel online courses!


Please enter your comment!
Please enter your name here