2012-05-02 41 views
0

我使用了一个时区场SimpleForm,Rails的时区优先领域显示

我的要求是有美国的时区上方为“优先级”值显示+伦敦同一时区多次。

它在我的形式是这样的:

​​

这工作,但它增加了“伦敦”每次重新加载表格时的另一个副本。 (我可以看到,为什么,因为它增加了“伦敦”值预定义的数组,但: 我尝试添加该到我的控制器:

@priority_time_zones = ActiveSupport::TimeZone.us_zones 
@priority_time_zones << ActiveSupport::TimeZone['London'] 

然后改变形式:

<%= p.input :time_zone, :label => "Time Zone", :priority => @priority_time_zones %> 

但这并不解决它(奇怪),不明白为什么它不断增加另一个“伦敦”每个重装。 有什么想法?日Thnx

+0

好吧,只是想通了(这经常发生在我身上张贴后...)需要使用@priority_time_zones =的ActiveSupport :: TimeZone.us_zones.dup复制的阵列,否则我还在更新原始名单。 D'呃。不知道数组是否这样做,谢谢rails console – bobomoreno

回答

2

需要使用@priority_time_zones =的ActiveSupport ::时区。 us_zones.dup复制数组,否则我仍在更新原始列表