Guest User

Untitled

a guest
Apr 21st, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.46 KB | None | 0 0
  1. require 'active_record'
  2.  
  3. class Document < ActiveRecord::Base
  4. named_scope :by_state, lambda { |state| {:conditions => ['orders.state = ?',state]} }
  5.  
  6. STATES = %w{queued working finished failed}.freeze
  7.  
  8. STATES.each do |state|
  9. define_method("#{state}?") { self.state == state }
  10. end
  11.  
  12. end
  13.  
  14. documents = Document.by_state('working').find(:all)
  15. documents.each do |doc|
  16. doc.state #=> 'working'
  17. doc.working? #=> true
  18. doc.finished? #=> false
  19. end
Add Comment
Please, Sign In to add comment