Niezdefiniowana metoda '>' dla nil: NilClass <NoMethodError>

Ok, mam następujący kod

 def update_state_actions
    states.each do |state|
      @state_turns[state.id] -= 1 if @state_turns[state.id] > 0 && state.auto_removal_timing == 1
    end
  end

teraz w linii ...

 @state_turns[state.id] -= 1 if @state_turns[state.id] > 0 && state.auto_removal_timing == 1

mówi błąd

in 'block update_state_actions' : Undefined method '>' for nil:NilClass <NoMethodError>

jaka jest przyczyna błędu?dlaczego> jest uważany za metodę, ale jest operatorem logicznym?

questionAnswers(2)

yourAnswerToTheQuestion