我有一个设置时区的 webapp
post_controller.rb
before_filter :set_time_zone
def set_time_zone
Time.zone = user.time_zone
end
现在,我没有在注册时从用户那里获取 time_zone,而是想知道如何从客户端动态设置时区并将其设置在 before_filter 中。我试图使用detect_timezone_rails gem。gem 提供了一种访问客户端时区的简单方法,只需从 js 文件中调用这样的函数即可。
$(document).ready(function(){
$('#your_input_id').set_timezone();
});
现在,上面的代码自动设置你的隐藏字段输入或选择输入,但我想知道你是否可以简单地使用函数调用保存到会话并从 Rails 服务器检索它。我猜当用户第一次访问该站点时,可以设置时区,并且可以使用会话值来设置其余访问的时区。我认为可以使用会话值在前置过滤器中设置时区。作为 javascript 的新手,我不确定如何访问 Rail 的加密 cookie 存储来设置值。这可能吗?如果是这样,我该怎么做?提前致谢,