从Rails 3.0x升级到3.2.11后,我收到以下错误:
There're too many years options to be built. Are you sure you haven't mistyped something? You can provide the :max_years_allowed parameter
代码:
<%= f.date_select :to,
:start_year => Time.now.year - 80,
:discard_day => true,
:include_blank => true %>
我还试图包含:max_years_allowed参数但没有成功,我该如何解决?
答案 0 :(得分:3)
根据rails文档,select_year
中的date_select
方法将max_years_allowed
设置为1000(如果未传入选项)。然后查看结尾的绝对值年份减去起始年份大于max_years_allowed
选项。您是否打开了rails控制台并检查Time.now.year - 80
是否超过1000年前没有给出一年?我知道这听起来很疯狂,但这是我能看到你得到这个错误的唯一原因。
这是the link。
答案 1 :(得分:1)
为什么不尝试这样做,它有效。
<%= f.date_select :to,
:start_year => 80.years.ago.year,
:discard_day => true,
:include_blank => true %>