2

我有一个允许用户创建事件的表单。用户填写的字段之一是日期。目前这是提交日期的代码:

<%= u.label :date %> <%= u.text_field :date, :placeholder => 'mm/dd/yyyy' %>

出于某种原因,如果用户输入 2012 年 1 月 2 日,它将存储为 dd/mm/yyyy,认为该事件是在 2 月 1 日而不是 1 月 2 日。我已经将我的初始化程序文件配置为以我希望的方式显示日期/日期时间(如这里的几篇文章所建议的那样)但这仍然是一个问题

更新 - 这是我的完整表格:

    <%= form_for(@party_profile) do |u|%>
    <p>
        <%= u.label :name %><%= u.text_field :name %>
    </p>

    <p>
        <%= u.label :location %><%= u.text_field :location %>
    </p>

    <p>
         <%= u.text_field :date, :placeholder => 'dd/mm/yyyy' %>

    </p>

    <p>
        <%= u.label :password %> <%= u.text_field :password %>
    </p>

    <%= u.submit "Let's Party!", :class => "btn btn-primary" %>
    <% end %>

我已尝试将 u.text_field 替换为 select_date,如下所示,但随后出现错误:

  undefined method `select_date' for #<ActionView::Helpers::FormBuilder:0x007f9e5e8c69d8>
4

3 回答 3

6
<%= u.label :date %> <%= u.date_select(:date, :order => [:month, :day, :year]) %>

是我能想到的最好的 - 仍然没有完全按照我想要的方式格式化

于 2013-02-11T06:52:08.887 回答
2

我用它来约会:

    <%= u.label :date %>
    <%= u.date_field :date %>

希望它有帮助=)

于 2015-02-21T00:18:51.153 回答
-1

考虑使用 select_date,而不是用户可以输入任何内容的简单文本字段。

<%= u.select_date(:date, :order => [:month, :day, :year]) %>

http://api.rubyonrails.org/classes/ActionView/Helpers/DateHelper.html#method-i-select_date

于 2013-01-29T00:41:30.617 回答