PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Kann ich ein benutzerdefiniertes Datumsformat für Pluck (Listen) auf Laravel5 erhalten?

Sie können dies auf drei Arten tun. Alle diese Lösungen hängen davon ab, dass das Datumsattribut keine Carbon-Instanz ist, was in Ihrem Fall der Fall ist.

  1. Ein Accessor für das Datumsattribut, um das gewünschte Format zurückzugeben:

In Ihrem Testmodell

Test.php

public function getDateAttribute($value)
{
    return Carbon::createFromFormat('Y-m-d H', $value)->format('m');
}

Dies wirkt sich jedoch überall auf den Code aus.

  1. Die zweite Möglichkeit besteht darin, ein benutzerdefiniertes Attribut zu erstellen.
public function getFormattedDateAttribute()
{
    return Carbon::createFromFormat('Y-m-d H', $this->date)->format('m');
}
  1. Die dritte Möglichkeit besteht darin, die Sammlung selbst zu bearbeiten.
$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');
        });