Mysql Часовой пояс с React.js / Node.js - PullRequest
0 голосов
/ 22 сентября 2019

У меня есть одна БД Mysql с таблицами, которые я должен управлять часовым поясом внутри таблиц.

global.time_zone и session.time_zone - UTC.

Я приведу короткий примеродна таблица, в которой я хотел бы установить некоторые условия.

У меня есть 5 разных «IP»:

, например:

  1. '1.1.1.1.1 '

  2. ' 1.1.1.1.2 '

  3. ' 1.1.1.1.3 '

  4. '1.1.1.1.4'

  5. '1.1.1.1.5'

У меня есть столбец "updated_at" (DateTime)

Теперь я хочу, чтобы условия были ниже:

  1. IP 1 = GMT
  2. IP 2 = GMT + 1
  3. IP 3= GMT + 2
  4. IP 4 = GMT + 3
  5. IP 5 = GMT + 4

Итак, согласно «IP» в таблице, яя получу соответствующий часовой пояс на "updated_at".

  1. Должен ли я манипулировать временем только для фронта, или есть способ конвертировать TZ на столе перед отправкойзапрос?Какое лучшее решение здесь?

  2. Как бороться с включением / выключением DST в будущем?

На переднем плане React.js,Backend - Node.js.

Спасибо!

1 Ответ

0 голосов
/ 22 сентября 2019

Хранение данных о времени и дате зависит от того, что вам нужно с ними делать с точки зрения поиска, обработки и отображения.

Представляет ли оно прошлое (т. Е. Журнал) или будущее (т. Е. Назначение)?

Прошлое легко, оно произошло, и вы, вероятно, знаете, когда и где.Но будущее DST может повлиять на это.

В вашем случае это выглядит как проблема с дисплеем, тогда вы можете выбрать, кто будет оплачивать счет за ЦП, ваша компания или пользователь.

Таким образом, вы можете использовать CONVERT_TZ (), чтобы получить его и сохранить в UTC'0.Я бы порекомендовал вам создать ВИД с этим правилом.(возможно, новые товарищи по команде не знают об этом преобразовании).В этом случае стоимость обработки является вашей.С другой стороны, вы можете передать его пользователю и настроить UTC'0 -> IP на клиентской стороне.

Есть некоторые ситуации, которые становятся беспорядочными, например, когда у вас есть журналкоторый отображает данные из разных часовых поясов для пользователя.Или когда вы хотите отправить электронное письмо этому пользователю.В этом случае вам придется также сохранять часовой пояс пользователя.

Я бы порекомендовал это видео .

...