@Djonson86
Нечем похвастаться.

Как в ларавел через миграцию создать в таблице базы данных поле, которое работает как created_at, но записывает только дату?

Без времени создания записи, только дата.
  • Вопрос задан
  • 131 просмотр
Решения вопроса 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега Laravel
Через миграцию это сделать невозможно, потому что в БД у поля created_at никакой логики нет - она вся реализована внутри фреймворка. Создать колонку с датой через миграцию - элементарно, но заполнять её вам придётся руками. Ну или указать в колонке дефолтное значение.
Ответ написан
@WebDevelopersRus
Можно попробовать так (но зная "магию" Laravel, может не сработать):
$table->date('created_at'); (via)

Также есть возможность изменения формата даты из модели (via)
protected $dateFormat = 'U';

Ну и примерно то, что вам надо, только в модели (via):
protected $casts = [
    'created_at' => 'datetime:Y-m-d',
];


Ну или же не париться и при выводе отображать нужный формат (благодаря Carbon-у из коробки):
$output->created_at->format('Y-m-d');
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы