如何在 sequel ruby 中转换每个查询的输出时区?

How to convert output timezone per query in sequel ruby?

我希望能够根据用户的首选时区在每个查询中设置时区,而无需在我的应用程序生成的每个原始 sql 中添加时区转换。

我能够使用此配置 query/retrieve 'Asia/Manila' TZ 中的记录

Sequel.extension :named_timezones Sequel.application_timezone = 'Asia/Manila'

是否可以为每个查询设置 application_timezone 以便我在每个请求中传递当前应用程序用户的时区。

以 UTC 格式存储所有内容,然后在 UI/presentation 层进行转换。

您可能想使用 Sequel 的 thread_local_timezones 扩展名:http://sequel.jeremyevans.net/rdoc-plugins/files/lib/sequel/extensions/thread_local_timezones_rb.html

这是每个线程,而不是每个查询,但希望仍能满足您的需要。