Ruby on rails 如何显示信用卡的月份和年份选择

Ruby on rails 如何显示信用卡的月份和年份选择,ruby-on-rails,ruby,Ruby On Rails,Ruby,我使用的是Rails 3.1。这是我的代码,要求用户输入信用卡到期月份和年份 <div class="field"> <%= f.label :expires_on, 'Expiration date' %> <br /> <%= select_month nil, {add_month_numbers: true}, {name: 'creditcard[month]', id: "card_month"} %>

我使用的是Rails 3.1。这是我的代码,要求用户输入信用卡到期月份和年份

  <div class="field">
    <%= f.label :expires_on, 'Expiration date' %>
    <br />
    <%= select_month nil, {add_month_numbers: true}, {name: 'creditcard[month]', id: "card_month"} %>
    <%= select_year nil, {start_year: Date.today.year, end_year: Date.today.year+15}, {name: 'creditcard[year]', id: "card_year"} %>
  </div>


以上代码有效。但是,问题是,如果存在验证错误,则会重置所选的到期日和月份


我尝试了
f。选择\u month
,但不支持该操作。

尝试以下操作:

<p>
  <%= f.label :expires_on, 'Expiration date' %><br />
  <%= f.date_select :expires_on, :discard_day => true, :start_year => Date.today.year, :end_year => (Date.today.year+10), :use_month_numbers => true %>
</p>


true,:start\u year=>Date.today.year,:end\u year=>(Date.today.year+10),:使用月数=>true%>


是否有方法翻转它们的显示顺序?首先显示年份,然后显示月份。您可以使用
:order
设置订单。例如
:订单=>[:月,:年]