在Rails中处理持续时间

问题描述 投票:0回答:1

我有一个Rails 5应用程序,我正在构建一个锻炼计划器。其中一个领域是:duration

我想让用户输入锻炼的持续时间。理想情况下,我想这样:

enter image description here

输入字段应始终默认为HH:MM:SS。

我最初的想法是使用HTML input type="time",它的行为方式正确,但无法加载,例如@workout.time作为占位符;它总是看起来像 - : - : - 。

这是我要找的timepicker吗?时间戳似乎像23:59:59这样,它应该能够表现得像这样:35:11:01。我应该寻找哪些关键字?

这可以用一些简单的JavaScript来解决吗?

javascript ruby-on-rails duration
1个回答
0
投票

你可以使用Rails的ActionView表单助手和time_field元素来实现这一点:

f.time_field :duration,
  value: f.object.duration&.strftime("%H:%M") || "%H:%M",
  min: 'hh:mm:ss',
  max: 'hh:mm:ss',

添加min和max会将默认格式从HH:MM更改为HH:MM:SS。请参阅:https://guides.rubyonrails.org/form_helpers.html了解更多详情!

© www.soinside.com 2019 - 2024. All rights reserved.