提交 5f0b9369 编写于 作者: T Tobias Lütke

Fix Associations#clear for not-yet-loaded associations (Patrick Lenz)


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2695 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
上级 7219e82f
*1.12.1* (October 19th, 2005)
* HABTM finders shouldn't return readonly records. #2525 [patrick@lenz.sh]
* Fixed Association#clear for associations which have not yet been accessed. #2524 [Patrick Lenz <patrick@lenz.sh>]
* HABTM finders shouldn't return readonly records. #2525 [Patrick Lenz <patrick@lenz.sh>]
* Make all tests runnable on their own. #2521. [Blair Zajac <blair@orcaware.com>]
......
......@@ -59,7 +59,7 @@ def delete(*records)
# Removes all records from this association. Returns +self+ so method calls may be chained.
def clear
return self if empty? # forces load_target if hasn't happened already
return self if length.zero? # forces load_target if hasn't happened already
if @options[:exclusively_dependent]
destroy_all
else
......
......@@ -566,6 +566,15 @@ def test_clearing_an_exclusively_dependent_association_collection
assert Client.find_by_id(client_id).nil?
end
def test_clearing_without_initial_access
firm = companies(:first_firm)
firm.clients_of_firm.clear
assert_equal 0, firm.clients_of_firm.size
assert_equal 0, firm.clients_of_firm(true).size
end
def test_deleting_a_item_which_is_not_in_the_collection
force_signal37_to_load_all_clients_of_firm
summit = Client.find_first("name = 'Summit'")
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册