Sha256: b7bbdbfe31f9c1a1dffd2d2384e8af7c3dbd2914b772d7d8a75a26981f3add72

Contents?: true

Size: 1.06 KB

Versions: 32

Compression:

Stored size: 1.06 KB

Contents

# This file contains various hacks for Rails compatibility.
# To use, just require in environment.rb, like so:
#
#   require 'couchrest/support/rails'

class Hash
  # Hack so that CouchRest::Document, which descends from Hash,
  # doesn't appear to Rails routing as a Hash of options
  def self.===(other)
    return false if self == Hash && other.is_a?(CouchRest::Document)
    super
  end
end


CouchRest::Document.class_eval do
  # Hack so that CouchRest::Document, which descends from Hash,
  # doesn't appear to Rails routing as a Hash of options
  def is_a?(o)
    return false if o == Hash
    super
  end
  alias_method :kind_of?, :is_a?
end


require Pathname.new(File.dirname(__FILE__)).join('..', 'validation', 'validation_errors')

CouchRest::Validation::ValidationErrors.class_eval do
  # Returns the total number of errors added. Two errors added to the same attribute will be counted as such.
  # This method is called by error_messages_for
  def count
    errors.values.inject(0) { |error_count, errors_for_attribute| error_count + errors_for_attribute.size }
  end
end

Version data entries

32 entries across 32 versions & 8 rubygems

Version Path
jpbougie-couchrest-0.27 lib/couchrest/support/rails.rb
mattetti-couchrest-0.24 lib/couchrest/support/rails.rb
mattetti-couchrest-0.25 lib/couchrest/support/rails.rb
mattetti-couchrest-0.26 lib/couchrest/support/rails.rb
mattetti-couchrest-0.27 lib/couchrest/support/rails.rb
mattetti-couchrest-0.28 lib/couchrest/support/rails.rb
mattetti-couchrest-0.29 lib/couchrest/support/rails.rb
mattetti-couchrest-0.30 lib/couchrest/support/rails.rb
mattetti-couchrest-0.31 lib/couchrest/support/rails.rb
mattetti-couchrest-0.32 lib/couchrest/support/rails.rb
mattetti-couchrest-0.33 lib/couchrest/support/rails.rb
norr-couchrest-0.30.1 lib/couchrest/support/rails.rb
norr-couchrest-0.30.2 lib/couchrest/support/rails.rb
norr-couchrest-0.30.3 lib/couchrest/support/rails.rb
norr-couchrest-0.30.4 lib/couchrest/support/rails.rb
norr-couchrest-0.30 lib/couchrest/support/rails.rb
norr-couchrest-0.33.01 lib/couchrest/support/rails.rb
norr-couchrest-0.33.02 lib/couchrest/support/rails.rb
oz-couchrest-0.29 lib/couchrest/support/rails.rb
peterpunk-couchrest-0.33 lib/couchrest/support/rails.rb