Изменение формата даты через свойство cast и date laravel не работает на сервере - PullRequest
0 голосов
/ 27 мая 2018

Я строю API, используя laravel, в котором мне нужно показывать метки времени в формате dmY g: ia.Я использую

protected $dates = [ 'created_on', 'modified_on'];

protected $casts = [
    'created_on' => 'datetime:d.m.Y g:i a',
    'modified_on' => 'datetime:d.m.Y g:i a',
];

Я попробовал этот код на своем локальном компьютере, и он работал нормально. Я вижу измененный формат даты в ответ на мой API, связанный с моделью, но когда я тестирую его на своем сервереЯ получаю формат Ymd.Где я делаю не так, спасибо за помощь.

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Хорошо, поэтому, проверив каждую ошибку на земле, я обнаружил, что проблема заключалась в том, что на моем локальном компьютере я использовал laravel 5.6, но на своем сервере я использовал laravel 5.5.Так что в основном это была проблема с версией Laravel.Этот трюк, безусловно, лучше всего подойдет тем, кому нужно поле даты в нужном формате без изменения исходного формата.

0 голосов
/ 27 мая 2018

Свойство date уже приводит эти поля к объектам даты Carbon.

Затем вы говорите, что вы должны приводить к определенному формату.Я рекомендую выбрать один или другой.

Моя рекомендация для вашего API - хранить даты в стандартном формате - не применяйте свой пользовательский формат к данным в базе данных (в основном используйте атрибут date).

КогдаВаш API извлекает данные, то есть когда вы конвертируете поля даты в нужный вам формат (посмотрите документы Carbon - это намного лучше, чем стандартный объект datetime).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...