为什么我在 rails 应用程序中的时间字段也显示日期?

Why my time field in rails app showing the date as well?

我在 rails 中有这个应用程序,其中一个模型具有时间字段属性,但是在我渲染模型数据时保存表单后,我看到默认日期为出色地。

这是字段-

<%= form.label :Time%>
<%= form.time_field(:timeOfservice,  :class=>'form-control mb-2',
                                     :min=>"10:00",
                                     :max=>"20:00", 
                                     :step=>'3600',
                                     required: true,
                                     id: :appointment_timeOfservice,
                                     :autocomplete=>'off') %>

这是页面上显示的内容

2000-01-01 13:00:00 UTC

该模型的每种形式都完美地保存了时间,但是该模型的每种形式都显示了日期 2000-01-01 和时间。

谁能解释一下如何纠正这个问题?我只想显示时间而不是日期。

我认为这是因为 Ruby and/or Rails 没有任何数据类型来表示没有日期组件的日期对象。

您将不得不开发自己的应用程序逻辑来处理这样一个事实,即来自该列的 ActiveRecord 对象实际上是一个 DateTime 对象(即使在数据库中只存储了时间组件).

类似问题已经有很好的答案,您可以在这里查看: