mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
e8c064bbe0
Signed-off-by: José Valim <jose.valim@gmail.com>
33 lines
1.2 KiB
Ruby
33 lines
1.2 KiB
Ruby
module ActiveModel
|
|
module DeprecatedErrorMethods
|
|
def on(attribute)
|
|
message = "Errors#on have been deprecated, use Errors#[] instead.\n"
|
|
message << "Also note that the behaviour of Errors#[] has changed. Errors#[] now always returns an Array. An empty Array is "
|
|
message << "returned when there are no errors on the specified attribute."
|
|
ActiveSupport::Deprecation.warn(message)
|
|
|
|
errors = self[attribute]
|
|
errors.size < 2 ? errors.first : errors
|
|
end
|
|
|
|
def on_base
|
|
ActiveSupport::Deprecation.warn "Errors#on_base have been deprecated, use Errors#[:base] instead"
|
|
ActiveSupport::Deprecation.silence { on(:base) }
|
|
end
|
|
|
|
def add_to_base(msg)
|
|
ActiveSupport::Deprecation.warn "Errors#add_to_base(msg) has been deprecated, use Errors#add(:base, msg) instead"
|
|
self[:base] << msg
|
|
end
|
|
|
|
def invalid?(attribute)
|
|
ActiveSupport::Deprecation.warn "Errors#invalid?(attribute) has been deprecated, use Errors#[attribute].any? instead"
|
|
self[attribute].any?
|
|
end
|
|
|
|
def each_full
|
|
ActiveSupport::Deprecation.warn "Errors#each_full has been deprecated, use Errors#to_a.each instead"
|
|
to_a.each { |error| yield error }
|
|
end
|
|
end
|
|
end
|