How do I get the number of seconds between two DateTimes in Ruby on Rails

后端 未结 8 1770
庸人自扰
庸人自扰 2020-12-23 15:37

I\'ve got code that does time tracking for employees. It creates a counter to show the employee how long they have been clocked in for.

This is the current code:

8条回答
  •  抹茶落季
    2020-12-23 16:25

    Define a Ruby function like this,

    def time_diff(start_time, end_time)
      seconds_diff = (start_time - end_time).to_i.abs
    
      days = seconds_diff / 86400 
      seconds_diff -= days * 86400
    
      hours = seconds_diff / 3600  
      seconds_diff -= hours * 3600
    
      minutes = seconds_diff / 60
      seconds_diff -= minutes * 60
    
      seconds = seconds_diff
    
      "#{days} Days #{hours} Hrs #{minutes} Min #{seconds} Sec"
     end
    

    And Call this function,

    time_diff(Time.now, Time.now-4.days-2.hours-1.minutes-53.seconds)
    

提交回复
热议问题