mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Change the deprecation messages to show the preferred way to work with
ActiveModel::Errors
This commit is contained in:
parent
08d9c7532c
commit
f55bfe7260
4 changed files with 12 additions and 12 deletions
|
@ -219,7 +219,7 @@ behavior out of the box:
|
|||
|
||||
class HasNameValidator < ActiveModel::Validator
|
||||
def validate(record)
|
||||
record.errors.messages[:name] << "must exist" if record.name.blank?
|
||||
record.errors.add(:name, "must exist") if record.name.blank?
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -114,9 +114,9 @@ module ActiveModel
|
|||
# person.errors.get(:age) # => []
|
||||
def get(key)
|
||||
ActiveSupport::Deprecation.warn(<<-MESSAGE.squish)
|
||||
ActiveModel::Errors#get is deprecated and will be removed in Rails 5.1
|
||||
ActiveModel::Errors#get is deprecated and will be removed in Rails 5.1.
|
||||
|
||||
To achieve the same use messages[:#{key}]
|
||||
To achieve the same use model.errors[:#{key}].
|
||||
MESSAGE
|
||||
|
||||
messages[key]
|
||||
|
@ -129,9 +129,9 @@ module ActiveModel
|
|||
# person.errors.get(:name) # => ["can't be nil"]
|
||||
def set(key, value)
|
||||
ActiveSupport::Deprecation.warn(<<-MESSAGE.squish)
|
||||
ActiveModel::Errors#set is deprecated and will be removed in Rails 5.1
|
||||
ActiveModel::Errors#set is deprecated and will be removed in Rails 5.1.
|
||||
|
||||
To achieve the same use messages[:#{key}] = "#{value}"
|
||||
Use model.errors.add(:#{key}, #{value.inspect}) instead.
|
||||
MESSAGE
|
||||
|
||||
messages[key] = value
|
||||
|
@ -162,9 +162,9 @@ module ActiveModel
|
|||
# person.errors[:name] # => ['must be set']
|
||||
def []=(attribute, error)
|
||||
ActiveSupport::Deprecation.warn(<<-MESSAGE.squish)
|
||||
ActiveModel::Errors#[]= is deprecated and will be removed in Rails 5.1
|
||||
ActiveModel::Errors#[]= is deprecated and will be removed in Rails 5.1.
|
||||
|
||||
To achieve the same use messages[:#{attribute}] << "#{error}"
|
||||
Use model.errors.add(:#{attribute}, #{error.inspect}) instead.
|
||||
MESSAGE
|
||||
|
||||
messages[attribute.to_sym] << error
|
||||
|
|
|
@ -15,7 +15,7 @@ module ActiveModel
|
|||
# class MyValidator < ActiveModel::Validator
|
||||
# def validate(record)
|
||||
# if some_complex_logic
|
||||
# record.errors.messages[:base] << "This record is invalid"
|
||||
# record.errors.add(:base, "This record is invalid")
|
||||
# end
|
||||
# end
|
||||
#
|
||||
|
|
|
@ -1078,7 +1078,7 @@ Another way to do this is using `[]=` setter
|
|||
```ruby
|
||||
class Person < ActiveRecord::Base
|
||||
def a_method_used_for_validation_purposes
|
||||
errors.messages[:name] << "cannot contain the characters !@#%*()_-+="
|
||||
errors.messages.add(:name, "cannot contain the characters !@#%*()_-+=")
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue