aboutsummaryrefslogtreecommitdiffstats
path: root/activemodel/lib/active_model/errors.rb
diff options
context:
space:
mode:
authorWojciech Wnętrzak <w.wnetrzak@gmail.com>2015-02-20 21:31:24 +0100
committerWojciech Wnętrzak <w.wnetrzak@gmail.com>2015-02-20 21:42:00 +0100
commit9ebb778ca0f891efcbf2b8f73c01860c6a6e1108 (patch)
treefd5ac58e2f5b5f1d593128f3452fa691cbcc8c51 /activemodel/lib/active_model/errors.rb
parent17e0878005c4fd51b0bbe91dbc4f5f25b3d98e49 (diff)
downloadrails-9ebb778ca0f891efcbf2b8f73c01860c6a6e1108.tar.gz
rails-9ebb778ca0f891efcbf2b8f73c01860c6a6e1108.tar.bz2
rails-9ebb778ca0f891efcbf2b8f73c01860c6a6e1108.zip
Simplify and alias ActiveModel::Errors methods where possible
Diffstat (limited to 'activemodel/lib/active_model/errors.rb')
-rw-r--r--activemodel/lib/active_model/errors.rb28
1 files changed, 4 insertions, 24 deletions
diff --git a/activemodel/lib/active_model/errors.rb b/activemodel/lib/active_model/errors.rb
index 166911f0fa..cd41ceeb5b 100644
--- a/activemodel/lib/active_model/errors.rb
+++ b/activemodel/lib/active_model/errors.rb
@@ -102,9 +102,7 @@ module ActiveModel
def include?(attribute)
messages[attribute].present?
end
- # aliases include?
alias :has_key? :include?
- # aliases include?
alias :key? :include?
# Get messages for +key+.
@@ -199,6 +197,7 @@ module ActiveModel
def size
values.flatten.size
end
+ alias :count :size
# Returns all message values.
#
@@ -216,35 +215,15 @@ module ActiveModel
messages.keys
end
- # Returns an array of error messages, with the attribute name included.
- #
- # person.errors.add(:name, :blank, message: "can't be blank")
- # person.errors.add(:name, :not_specified, message: "must be specified")
- # person.errors.to_a # => ["name can't be blank", "name must be specified"]
- def to_a
- full_messages
- end
-
- # Returns the number of error messages.
- #
- # person.errors.add(:name, :blank, message: "can't be blank")
- # person.errors.count # => 1
- # person.errors.add(:name, :not_specified, message: "must be specified")
- # person.errors.count # => 2
- def count
- to_a.size
- end
-
# Returns +true+ if no errors are found, +false+ otherwise.
# If the error message is a string it can be empty.
#
# person.errors.full_messages # => ["name cannot be nil"]
# person.errors.empty? # => false
def empty?
- all? { |k, v| v && v.empty? && !v.is_a?(String) }
+ size.zero?
end
- # aliases empty?
- alias_method :blank?, :empty?
+ alias :blank? :empty?
# Returns an xml formatted representation of the Errors hash.
#
@@ -407,6 +386,7 @@ module ActiveModel
def full_messages
map { |attribute, message| full_message(attribute, message) }
end
+ alias :to_a :full_messages
# Returns all the full error messages for a given attribute in an array.
#