rails--rails/activerecord/test/models/traffic_light.rb

28 lines
495 B
Ruby

class TrafficLight < ActiveRecord::Base
include ActiveRecord::StateMachine
state_machine do
state :off
state :red
state :green
state :yellow
event :red_on do
transitions :to => :red, :from => [:yellow]
end
event :green_on do
transitions :to => :green, :from => [:red]
end
event :yellow_on do
transitions :to => :yellow, :from => [:green]
end
event :reset do
transitions :to => :red, :from => [:off]
end
end
end