相关疑难解决方法(0)

时间差以小时计

我试图获得两个不同时间实例的小时差异.我从DB获取这些值作为:datetime列

如何在忽略或舍入分钟的同时将其包括在计算中的月份和年份?这只能手动完成还是有功能吗?

ruby time

65
推荐指数
5
解决办法
6万
查看次数

计算 Rails 中的总小时数

Foo.first = {id: 1, start:2000-01-01 07:00:00 UTC, end: 2000-01-01 12:00:00 UTC, total_hours_worked: nil}
Run Code Online (Sandbox Code Playgroud)

end这里作为一个例子。

我已经为两者创建Foo了,因为我只需要几小时/分钟。我以前从未使用过 Time 对象,所以请耐心等待。t.timestartend

我需要使用start和获取总小时数和分钟数end:

start = Foo.find(1).start
end = Foo.find(1).end
start + end #=> errors
start.to_i + end.to_i = 1893438000 #=> What's that?
distance_of_time_in_words(start.to_i + end.to_i) #=> "about 60 years" What?
Run Code Online (Sandbox Code Playgroud)

我期待着5:00:00。我知道这5:00:00实际上意味着凌晨 5 点,但上下文会有所不同。

做了一些搜索我就看到了这个。我真的不想在 Rails/Ruby 中为这个“应该在方法中烘焙”使用更多的 gem。

我的问题将找到我真正想要实现的目标的答案(获取本周的工作总小时数):

Foo.pluck(:total_hours_worked).sum(&:to_d) #=> best way?
Run Code Online (Sandbox Code Playgroud)

哪里:total_hours_worked会有一个字符串,只是为了让事情变得不那么复杂。

ruby postgresql ruby-on-rails ruby-on-rails-5

4
推荐指数
1
解决办法
1804
查看次数

标签 统计

ruby ×2

postgresql ×1

ruby-on-rails ×1

ruby-on-rails-5 ×1

time ×1