我在 SimpleForm 中使用时区字段,
我的要求是将美国时区 + 伦敦显示在顶部作为“优先”值。
我的形式是这样的:
<%= p.input :time_zone, :label => "Time Zone", :priority => (ActiveSupport::TimeZone.us_zones << ActiveSupport::TimeZone['London'])%>
这可行,但每次重新加载表单时都会添加另一个“伦敦”副本。(我可以明白为什么它将'London'值添加到预定义数组中,但是:我已经尝试将它添加到我的控制器中:
@priority_time_zones = ActiveSupport::TimeZone.us_zones
@priority_time_zones << ActiveSupport::TimeZone['London']
然后将表格更改为:
<%= p.input :time_zone, :label => "Time Zone", :priority => @priority_time_zones %>
但这并不能解决它(奇怪),不明白为什么每次重新加载时它都会不断添加另一个“伦敦”。有什么想法吗??谢谢