Можете да направите това по три начина. Всички тези решения зависят от факта, че атрибутът за дата не е екземпляр на Carbon, какъвто е вашият случай.
- Средство за достъп за атрибута на датата, за да върне формата, който желаете:
Във вашия тестов модел
Test.php
public function getDateAttribute($value)
{
return Carbon::createFromFormat('Y-m-d H', $value)->format('m');
}
Това обаче ще засегне кода навсякъде.
- Вторият начин е да създадете персонализиран атрибут.
public function getFormattedDateAttribute()
{
return Carbon::createFromFormat('Y-m-d H', $this->date)->format('m');
}
- Третият начин е да редактирате самата колекция.
$months = \App\Test::where('date', '<=', 'now()')
->orderBy('date', 'desc')
->pluck('date');
$months->each(function($month){
return Carbon::createFromFormat('Y-m-d H', $month)->format('m');
});