Ruby on rails 以rails多步骤表单管理时区
我有一个在会话表中存储数据的多步骤表单。在存储数据之前,我通过创建带有时区代理的@offset变量来弥补时差Ruby on rails 以rails多步骤表单管理时区,ruby-on-rails,Ruby On Rails,我有一个在会话表中存储数据的多步骤表单。在存储数据之前,我通过创建带有时区代理的@offset变量来弥补时差 @offset = DateTime.now.in_time_zone(params[:event][:time_zone]).utc_offset / 3600 params[:event][:google_address] = current_user.google_address if params[:event][:google_address].blank? par
@offset = DateTime.now.in_time_zone(params[:event][:time_zone]).utc_offset / 3600
params[:event][:google_address] = current_user.google_address if params[:event][:google_address].blank?
params[:event][:start] = DateTime.strptime(params[:event][:start], "%m/%d/%Y %l:%M %P") - @offset.hours
params[:event][:end] = DateTime.strptime(params[:event][:end], "%m/%d/%Y %l:%M %P") - @offset.hours
session[:event_params].deep_merge!(params[:event]) if params[:event]
这很好,但是如果用户返回到前面的步骤(保存表单之前),表单会返回GMT时间。我想在输入字段中重新显示用户时区中的时间
有人知道这个诀窍吗?一旦你有了数据,你就可以在用户会话中存储
参数[:事件][:时区]
会话[:时区]=参数[:事件][:时区]
在上一步中,您可以访问此表单并相应地显示表单
session[:timezone]#将为零或值