Не удается удалить часы и минуты из таблицы данных
Я пытаюсь получить поле даты выпуска с y-m-d
формат.. На самом деле формат времени (для ymd) выглядит нормально, но он также дает h: m: s, я изменил формат времени на стороне сервера и удалил h: m: s, но datatable по-прежнему показывает их
Что я получаю
2012-04-11 00:00:00
Что я хочу
2012-04-11
Поле Released_at (тема Metronic - данные JSON)
{
field: "released_at",
title: "Release Date",
type: "date",
format: "YYYY/MM/DD"
}
формат времени (я использую Laravel Framework)
protected $dateFormat = "Y-m-d";
Как это исправить?
2 ответа
Datatable принимает тип столбца такой же, как тип MySQL.
Вы пытаетесь конвертировать MySQL dateTime
столбец к Date
в datatable, что невозможно из datatable.
В вашем коде вы заявили
format: "YYYY/MM/DD" // but actual type is dateTime as per mysql.So it will append time next to it.
Если вы храните только дату в MySQL, вы можете изменить тип столбца на Date
и ваша проблема будет решена.
И если вы хотите преобразовать строку в дату в laravel, вы можете подписаться на этот пост.
Ваш столбец базы данных имеет тип dateTime
который, по определению, включает в себя как дату, так и время. Если вы хотите удалить время на уровне базы данных, используйте date
введите вместо
$table->date("released_at")->nullable();
Если вместо того, чтобы удалять время из базы данных, вы просто хотите игнорировать его для определенных частей вашего приложения, вы можете использовать тот факт, что в Laravel все даты, поступающие из ваших моделей, Carbon\Carbon
экземпляры, чтобы вы могли сделать
$model->releasedAt->format('y-m-d'); // Returns '18-09-11'