2017-03-20 3 views
1

이벤트 시작 시간과 종료 시간 사이의 시간을 계산하려고하며 사용자가 이벤트에 등록하면 목표에 도달합니다. 지금은 음수를 얻는 것 외에는 메서드가 작동하는 것 같습니다. 나는 시작 시간과 종료 시간 사이의 시간 계산

h = ((event.start_time - event.end_time)/1.hour).round 

다음은이 나를 도울 수있는 사람을 기대하고이 모델에 대한 내 전체 컨트롤러의 코드

이 줄을 함께 할 수있는 뭔가가 있으리라 믿고있어.

class UserEventsController < ApplicationController 

    def create 
    event = Event.find(params[:id]) 
    current_user.events << event 
    hours = 0 
    goals = current_user.goals 
    current_user.events.each do |event| 
     h = ((event.start_time - event.end_time)/1.hour).round 
     hours += h 
     current_user.update_attributes(hours: h) 
    end 



    redirect_to organization_path(event.organization) 
    end 
end 

답변

1

난 당신이 뒤로 당신의 시간을 줄 생각

h = ((event.end_time - event.start_time)/1.hour).round 

가 음의 값을 생산 한 것이 그 시작하기 전에 이벤트가 종료하지 않는 한. 4시에 시작해서 6시에 끝나면 4-6 시가 아니라 6-4시 또는 2 시가됩니다.

+0

완벽합니다. 정말 고맙습니다 ! – Amena

관련 문제