Ruby和Rails有很多方法来解析带有时区信息的日期时间,但是缺乏一个集成的机制AFAIK来同时输入这两个信息,然后解析需求使其复杂化。
应用程序以UTC格式保存时间戳,出生日期将有一个时区组件和另一个属性来提供时区的偏移。
t.timestamptz "birth_date"
t.string "birth_date_tz"
问题是正确处理参数。用户不是以UTC术语思考,而是以给定时区的时钟思考。
因此,以下参数需要首先进行偏移以转换为UTC
Parameters: {"authenticity_token"=>"[FILTERED]", "individual"=>{"birth_date(3i)"=>"1",
"birth_date(2i)"=>"1", "birth_date(1i)"=>"1987", "birth_date(4i)"=>"01",
"birth_date(5i)"=>"01", "birth_date_tz"=>"Hawaii",, "birth_location_city"=>"Honolulu"}
并希望避免保存,然后更新。
应如何处理这些问题?
- (稍后将查看它们,重新翻译tz的偏移量)*
1条答案
按热度按时间wfypjpf41#
是的,显然应用程序无法知道用户输入数据时的时区,尽管您可以在JavaScript中检测到当前浏览器时间的偏移量,但无论如何都无法可靠地将其转换为时区。
所以,是的,在你完成你的任务后,
FWIW,所有被说的出生日期实际上没有时区。如果你出生在纽约的午夜之后,你的生日不是在加州的前一天。