vendredi 19 octobre 2018

Custom timestamp copies updated_at on $model->save()

I have a table and related model that has a custom timestamp. The migration is set like this:

Schema::create('tests', function (Blueprint $table) {
    $table->increments('id');
    $table->string('name');
    $table->timestamp('expire_at');
    $table->timestamps();
});

And I have set up my Model like so:

class Test {
    protected $dates = [
       'expire_at'
    ];
}

When I try to update the name field only, it sets the expire_at field as same as updated_at field rather than simply not changing it.

$test = Test::find(1);
$test->name = "Changed Value";

// Until here, the expire_at timestamp has its true value
// but on save(), it changes expire_at to updated_at time.

$test->save();

Is there anything I am doing wrong with the protected $dates usage?



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire