Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails:将一个时区中的未来会议时间转换为另一个时区_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails Rails:将一个时区中的未来会议时间转换为另一个时区

Ruby on rails Rails:将一个时区中的未来会议时间转换为另一个时区,ruby-on-rails,ruby,Ruby On Rails,Ruby,使用FlatPicker,我允许用户指定未来会议的时间和日期,其中包括他们的时区 结果为以下值: 2020年5月25日星期一12:00:00 GMT-0600(山区昼间) 他们可以选择与之会面的团队成员,该时间成员将设置其当前时区,我将使用ActiveSupport::TimeZone()存储该值 我试图弄清楚如何获取上面的日期结果,并向安排会议的用户显示“X将是晚上7点。” 我将AttendedZone和meetingTime发送到Rails端点: def time_for_attende

使用FlatPicker,我允许用户指定未来会议的时间和日期,其中包括他们的时区

结果为以下值:

2020年5月25日星期一12:00:00 GMT-0600(山区昼间)

他们可以选择与之会面的团队成员,该时间成员将设置其当前时区,我将使用ActiveSupport::TimeZone()存储该值

我试图弄清楚如何获取上面的日期结果,并向安排会议的用户显示“X将是晚上7点。”

我将AttendedZone和meetingTime发送到Rails端点:

  def time_for_attendee

    attendeeZone = params["attendeeZone"]
    # => "Tokyo"

    meetingTime = params["meetingTime"]
    # => "Mon May 25 2020 12:00:00 GMT-0600 (Mountain Daylight Time)"

    attendeeTime = ???

    render json: {
      attendeeZone: attendeeZone,
      meetingTime: meetingTime,
      attendeeTime: attendeeTime
     }

  end
如何根据与会者的时区将会议时间转换为与会者时间

我很熟悉
时区.now.in\u时区(AttendeerZone)
,但我不知道如何将会议时间格式转换为替换
现在的

它是
.parse()


或者,如果您将其分配给一个模型,那么它将被自动解析。

谢谢,这就成功了!您所说的“将它分配给一个模型,然后它将被自动解析”是什么意思?因为您使用的是rails,所以我假设您使用的是activerecord。会议时间听起来应该存储到数据库中。如果模型上有一个datetime列,那么只需将未解析的字符串表示形式传递到该列中,rails就会为您转换它。那你就不需要打电话了,自己分析一下。
Time.zone.parse(params["meetingTime"]).in_time_zone(attendeeZone)