【问题标题】:Rails: How do I specifiy the start and end dates in a date select?Rails:如何在日期选择中指定开始日期和结束日期?
【发布时间】:2019-08-12 15:55:50
【问题描述】:

我正在使用 SimpleForm,但我读过它的日期输入采用与 Rails 内置帮助程序相同的选项。

我想显示一个日期选择器,允许用户选择从现在起两个月内的日期。

我知道我可以设置开始和结束年份。但是如何将范围限制为几个月?

类似:

<%= simple_form_for @order, url: orders_path do |form| %>
  <%= form.input :delivery_date,
                 order: [:day, :month, :year],
                 include_blank: true,
                 start_month: Time.now.month,
                 end_month: Time.now.month + 2
  %>
  <%= form.button :submit %>
<% end %>

【问题讨论】:

    标签: ruby-on-rails datepicker simple-form form-for


    【解决方案1】:

    我很确定 simple_form 将此委托给 Rails 的 date_select 方法,在这种情况下您必须使用 start_yearend_year

    Rails 中的基本日期选择器非常简单,我不确定它是否能满足您的要求。

    = form.input :delivery_date,
                 order: [:day, :month, :year],
                 include_blank: true,
                 start_year: 1.year.ago,
                 end_year: Time.now.year
    

    `https://apidock.com/rails/ActionView/Helpers/DateHelper/date_select

    【讨论】:

      【解决方案2】:

      你可以这样做:

      <%= form.select :delivery_date, ((Date.today)...(Date.today + 2.months)).map{ |date| [date.strftime("%d %B %Y"), date] }, {} %>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-01-23
        • 1970-01-01
        • 2012-08-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多