Sha256: c466dc5103201804d241a9b4d4a233a5832000b17204a01f14317b77a5690411

Contents?: true

Size: 543 Bytes

Versions: 4

Compression:

Stored size: 543 Bytes

Contents

module Droom
  module ModelHelpers
    def self.included(base)
      base.extend Droom::ClassMethods
      base.send :include, Droom::InstanceMethods
    end
  end
  
  module ClassMethods

  end
  
  module InstanceMethods

    def ensure_presence_and_uniqueness_of(column, base, scope=self.class.scoped)
      unless self.send :"#{column}?"
        value = base
        addendum = 0
        value = "#{base}_#{addendum+=1}" while scope.send :"find_by_#{column}", value
        self.send :"#{column}=", value
      end
    end
    
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
droom-0.4.3 lib/droom/model_helpers.rb
droom-0.4.2 lib/droom/model_helpers.rb
droom-0.4.1 lib/droom/model_helpers.rb
droom-0.2.1 lib/droom/model_helpers.rb