在ruby on rails中使用helper方法的时间格式

时间:2018-07-31 09:32:35

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4

我表中有时间数据

t.time "start_time"
t.time "end_time"

当我添加数据时,它会以这种格式显示

Start Time  2000-01-01 06:00:00 UTC
End Time    2000-01-01 08:00:00 UTC

我只希望显示时间?我该怎么做??

我的表单就是这样

      <div class="form-group row">
         <%= form.label :start_date, class: "control-label text-right col-md-2" %>
         <div class="col-md-4">
           <div class="input-group">
             <%= form.text_field :start_date, id: :course_start_date, value: "#{format_date(form.object.start_date)}", class: "form-control mydatepicker" %>
             <span class="input-group-addon"><i class="icon-calender"></i></span>
         </div>
        </div>
      </div>
      <div class="form-group row">
         <%= form.label :end_date, class: "control-label text-right col-md-2" %>
         <div class="col-md-4">
           <div class="input-group">
              <%= form.text_field :end_date, id: :course_end_date, value: "#{format_date(form.object.end_date)}", class:"form-control mydatepicker" %>
              <span class="input-group-addon"><i class="icon-calender"></i></span>
           </div>
         </div>
      </div>

4 个答案:

答案 0 :(得分:0)

您可以使用strftime来实现。

date.strftime('%H:%M:%S')

答案 1 :(得分:0)

尝试 strftime("%I:%M%p")
有关更多信息,请查看here

答案 2 :(得分:0)

使用下面的代码将解决您的问题:

styleUrls

答案 3 :(得分:0)

Rails具有to_formatted_s帮助器方法(别名为to_s。此帮助器方法已经定义了几种日期和时间格式,并且很容易定义自己的格式。

您很幸运,因为仅存在没有日期信息的返回时间:

start_date.to_s(:time)

与直接使用strftime相比,在Rails中使用命名日期和时间格式的好处在于,由于以后只有一个地方可以更改,因此以后更容易更改格式。并且您可以定义取决于语言环境的格式。