Du kan göra det på tre sätt. Alla dessa lösningar beror på det faktum att date-attributet inte är en Carbon-instans, vilket är ditt fall.
- En accessor för date-attributet för att returnera önskat format:
I din testmodell
Test.php
public function getDateAttribute($value)
{
return Carbon::createFromFormat('Y-m-d H', $value)->format('m');
}
Detta kommer dock att påverka koden överallt.
- Det andra sättet är att skapa anpassade attribut.
public function getFormattedDateAttribute()
{
return Carbon::createFromFormat('Y-m-d H', $this->date)->format('m');
}
- Det tredje sättet är att redigera själva samlingen.
$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');
});