PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Puis-je obtenir un format de date personnalisé pour pluck(lists) sur Laravel5 ?

Vous pouvez le faire de trois manières. Toutes ces solutions dépendent du fait que l'attribut date n'est pas une instance Carbon, ce qui est votre cas.

  1. Un accesseur pour l'attribut date pour renvoyer le format de votre choix :

Dans votre modèle de test

Test.php

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

Cependant, cela affectera le code partout.

  1. La deuxième méthode consiste à créer un attribut personnalisé.
public function getFormattedDateAttribute()
{
    return Carbon::createFromFormat('Y-m-d H', $this->date)->format('m');
}
  1. La troisième méthode consiste à modifier la collection elle-même.
$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');
        });