2016-07-23 3 views
0

У меня есть следующий метод мутатор в моей Information Model: (Пользователь имеет information метод)Laravel 5,2 - Мутаторы - SetAttribute

public function setMyDateAttribute($value){ 
     $this->attributes['my_date'] = \Carbon\Carbon::createFromFormat('d-m-Y', $value); 
} 

И

$user->information()->update($request->get('information')); 

Но ничего не происходит ...

Но если да, то:

$information = $request->get('information'); 
$information['my_date'] = \Carbon\Carbon::createFromFormat('d-m-Y', $information['my_date']); 
$user->information()->update($information); 

он отлично работает

Что мне не хватает?

Благодаря

ответ

0

Ваш вопрос немного запутанным, но из примера, приведенного в вашем вопросе, я понял, что вы хотите Laravel заботиться о вашем my_date поле так же, как (созданные-на/updated_at) метки времени. Если да, то вы должны Р.Х. my_date имя в $dates полей в модели, например:

protected $dates = ['created_at', 'updated_at', 'my_date']; 

Если вы используете softDeleting затем также добавить deleted_at в этом $dates массиве. Read more here.

+0

У меня есть «my_date» в $ date. Но с «SetMyDateAttribute» не работает. Но если я сделаю это вручную. – carlos

+0

Убедитесь, что это поле «timestamp» в базе данных. –