Remove deprecated conditions parameter from `#destroy_all`

上级 4fc3366d
* Remove deprecated conditions parameter from `#destroy_all`.
*Rafael Mendonça França*
* Remove deprecated support to passing arguments to `#select` when a block is provided.
*Rafael Mendonça França*
......
......@@ -446,16 +446,8 @@ def update(id = :all, attributes)
# ==== Examples
#
# Person.where(age: 0..18).destroy_all
def destroy_all(conditions = nil)
if conditions
ActiveSupport::Deprecation.warn(<<-MESSAGE.squish)
Passing conditions to destroy_all is deprecated and will be removed in Rails 5.1.
To achieve the same use where(conditions).destroy_all.
MESSAGE
where(conditions).destroy_all
else
records.each(&:destroy).tap { reset }
end
def destroy_all
records.each(&:destroy).tap { reset }
end
# Destroy an object (or multiple objects) that has the given id. The object is instantiated first,
......
......@@ -1004,12 +1004,6 @@ def test_destroy_all
assert davids.loaded?
end
def test_destroy_all_with_conditions_is_deprecated
assert_deprecated do
assert_difference("Author.count", -1) { Author.destroy_all(name: "David") }
end
end
def test_delete_all
davids = Author.where(name: "David")
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册