Страница 1 из 1
Как и где правильно делать преобразования даты?
Добавлено: 2014.11.24, 13:59
retrus
Здравствуйте. Подскажите где и как правильно выполнить преобразования даты из базы данных (используется mongodb) для последующего рендеринга в вид?
Необходимо преобразовать MongoDate в dd.mm.yyyy и передать в input. Где правильнее будет делать это преобразование? В контроллере в action или в какому другом месте, например с помощью метода beforeRender.
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.24, 14:04
astronin
добавить в модель обработку, это будет зависеть от того, где именно нужна дата
а вообще, храните дату как integer
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.24, 14:09
retrus
Дата нужна в виде. Думаю не совсем правильно хранит дату в integer если есть специально созданный MongoDate
А если с помощью beforeRender сделать? Немного непонятно как его использовать, почему то он не схватывает у меня данные. Возможно делаю как то не так если не сложно дайте пример.
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.24, 14:25
asset
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.24, 15:51
retrus
Не дорос я еще до behaviors(), хотя если представите код с хорошими комментариями, буду благодарен.
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.24, 17:27
Aibolit
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.25, 07:43
retrus
На мои вопросы почему то ни кто так и не ответил, найти что то похожее в поиске и поставить ссылку могут все, вы предложите свой вариант с примером....
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.25, 10:09
astronin
вы конечно не обижайтесь, но может за вас еще и проект написать? все что необходимо для работы, вам показали и подсказали, займитесь теперь делом
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.25, 11:37
Shappy
Код: Выделить всё
'components' => [
'formatter' => [
'dateFormat' => 'dd.MM.yyyy',
'timeFormat' => 'H:i:s',
'datetimeFormat' => 'dd.MM.yyyy H:i:s',
'decimalSeparator' => ',',
'thousandSeparator' => ' ',
'currencyCode' => 'RUR',
],
...
]
Код: Выделить всё
Yii::$app->formatter->asDatetime($model->created_at);
Я так делаю...
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.25, 14:42
VaNnOrus
retrus писал(а):Дата нужна в виде. Думаю не совсем правильно хранит дату в integer если есть специально созданный MongoDate
Сомнительный аргумент. В MySQL тоже есть datetime и что теперь? Большинство хранит дату в обычном int (11).
Если что-то где-то есть - это совсем не означает, что это "что-то" априори нужно использовать где надо и не надо, даже если не удобно.
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.25, 14:50
Shappy
VaNnOrus а как будешь такой запрос делать с into'ом: Выбрать все записи которые были созданы в четверг. Лучше юзать вещи специально предназначенные для конкретных целей... имхо...
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.25, 14:53
mickgeek
Холивар по поводу формата даты начинался в
этой теме.
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.25, 15:12
astronin
дело не в холиваре, просто постоянно появляются вот такие умники, которые не хотят никого слушать, у них же свое имхо есть, пока не наступят на очередные грабли...
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.25, 15:35
VaNnOrus
Shappy писал(а):VaNnOrus а как будешь такой запрос делать с into'ом: Выбрать все записи которые были созданы в четверг. Лучше юзать вещи специально предназначенные для конкретных целей... имхо...
Если речь о последнем четверге, то не вижу проблемы вычислить время.
Если в любой четверг - интересно как это вообще где-угодно можно сделать.
Я ответил на конкретное утверждение конкретным утверждением. Я нигде не сказал "Вам это не нужно, не используйте".
По теме - во вьюхе и преобразовывайте дату в нужный вид.
Re: Как и где правильно делать преобразования даты?
Добавлено: 2014.11.26, 13:38
Shappy
VaNnOrus писал(а):Shappy писал(а):VaNnOrus а как будешь такой запрос делать с into'ом: Выбрать все записи которые были созданы в четверг. Лучше юзать вещи специально предназначенные для конкретных целей... имхо...
Если речь о последнем четверге, то не вижу проблемы вычислить время.
Если в любой четверг - интересно как это вообще где-угодно можно сделать.
Я ответил на конкретное утверждение конкретным утверждением. Я нигде не сказал "Вам это не нужно, не используйте".
По теме - во вьюхе и преобразовывайте дату в нужный вид.
Используя datetime можно сгруппировать по дням недели... Мне однажды понадобилось выводить гистограмму заявок по дням недели... С интом это невозможно...
Re: Как и где правильно делать преобразования даты?
Добавлено: 2015.01.15, 16:51
VaNnOrus
Shappy писал(а):
Используя datetime можно сгруппировать по дням недели... Мне однажды понадобилось выводить гистограмму заявок по дням недели... С интом это невозможно...
Я ж сказал - нужно использовать возможности там где они нужны, а не потому, что они есть, даже если их особенности абсолютно не нужны. Мой комментарий по поводу хранения относился к словам:
retrus писал(а):Думаю не совсем правильно хранит дату в integer если есть специально созданный MongoDate