public
Description: cheat sheet repository for chit
Homepage:
Clone URL: git://github.com/robin/chitsheet.git
robin (author)
Wed Jul 09 03:11:05 -0700 2008
commit  4d546432dd5b473dbbb5883f19cacc71b4599483
tree    d2371207000e34eb8ae02337f9e5c2f03ffdd22d
parent  8b2c5772e458466c24b4c2360fcf24e8b3b72468
chitsheet / acts_as_state_machine.yml
100644 24 lines (18 sloc) 0.48 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
---
acts_as_state_machine: |-
  == Example
  
  class Order < ActiveRecord::Base
    acts_as_state_machine :initial => :opened
  
    state :opened
    state :closed, :enter => Proc.new {|o| Mailer.send_notice(o)}
    state :returned
  
    event :close do
      transitions :to => :closed, :from => :opened
    end
  
    event :return do
      transitions :to => :returned, :from => :closed
    end
  end
  
  o = Order.create
  o.close! # notice is sent by mailer
  o.return!