Tengo una función en el controlador del tablero

  public function chart(){

    $result = DB::table('orders')->pluck('total_price','created_at');
    return response()->json($result);
}

Alimenta este script jquery

public function chart(){

    $result = DB::table('orders')->pluck('total_price','created_at');
  // $result['created_at'] = $result['created_at']->format('M d Y');
    return response()->json($result);
}

Actualmente se muestra el gráfico, pero ¿cómo puedo formatear la fecha para usar el formato ('M d Y') en lugar de la marca de tiempo que muestra?

0
firefire 10 sep. 2018 a las 15:39

3 respuestas

La mejor respuesta

Esto se puede resolver si usa Laravel Eloquent en lugar de acceder directamente a la base de datos.

Implementación elocuente mutators, un tipo de función que transforma sus datos al formato deseado.

PERO , en realidad, no debe usarlo para este propósito, en su lugar, puede usar Recursos de API elocuentes, para que pueda crear un recurso que transforme los datos como desee.

Lo siento si esta respuesta es muy conceptual, pero creo que usar las herramientas correctas para el marco es la forma correcta de resolver su problema. Esa es la magia de un marco. ¡Buena suerte!

0
Elias Soares 10 sep. 2018 a las 13:00

Use Laravel Eloquent y luego intente con la opción de formateo de cadenas de carbono:

Agregue lo siguiente para obtener el valor en su archivo blade de vista.

{{  $result->created_at->toFormattedDateString() }} 
0
Peace 10 sep. 2018 a las 14:37

Puede usar Carbon para lograr esto: Carbon es una extensión simple de API PHP para DateTime.

<?php
    \Carbon\Carbon::parse($result['created_at'])->format('M d Y');
?>
0
Chukwuemeka Inya 10 sep. 2018 a las 12:49