Class: ActiveRecord::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/at_most.rb

Class Method Summary collapse

Class Method Details

.at_most(limiter, options = {}) ⇒ Object



21
22
23
24
25
26
27
28
29
# File 'lib/at_most.rb', line 21

def self.at_most(limiter, options = {})
  validate do |model|
    @all = self.class.all
    @count = @all.is_a?(ActiveRecord::Relation) ? @all.size : @all.count
    if @count >= limiter
      model.errors.add :base, validation_error(model, options[:message])
    end
  end
end