Module: ActiveRecord::Validations::ClassMethods

Defined in:
lib/validate_block.rb

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name, *args, &block) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/validate_block.rb', line 12

def method_missing(name, *args, &block)
  if args.last.class == Hash
    args.last.merge!(@block_opts)
  else
    args << @block_opts
  end
  
  if name.to_s =~ /^validates_/
    send(name, *args)
  elsif respond_to?(("validates_"+name.to_s).to_sym)
    send(("validates_"+name.to_s).to_sym, *args)
  else
    super
  end
end

Instance Method Details

#validate_block(opts = {}, &block) ⇒ Object



7
8
9
10
# File 'lib/validate_block.rb', line 7

def validate_block(opts = {}, &block)
  @block_opts = opts || {}
  yield
end