aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/nested_attributes.rb
diff options
context:
space:
mode:
authorAaron Christy <aaron@edgecase.com>2011-10-15 19:53:36 -0400
committerAaron Christy <aaron@edgecase.com>2011-10-17 13:29:11 -0400
commit8510a0bb5a8a65e4bc067ee5a7d98aae965b47a5 (patch)
treeb8f3d94109b117a2b492543b0b0aac96c78289b7 /activerecord/lib/active_record/nested_attributes.rb
parent098c95abcb2b101bde0d55ddd5e348fda0ec8f49 (diff)
downloadrails-8510a0bb5a8a65e4bc067ee5a7d98aae965b47a5.tar.gz
rails-8510a0bb5a8a65e4bc067ee5a7d98aae965b47a5.tar.bz2
rails-8510a0bb5a8a65e4bc067ee5a7d98aae965b47a5.zip
Exclude _destroy parameter in :all_blank check (issue #2937)
Diffstat (limited to 'activerecord/lib/active_record/nested_attributes.rb')
-rw-r--r--activerecord/lib/active_record/nested_attributes.rb5
1 files changed, 3 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/nested_attributes.rb b/activerecord/lib/active_record/nested_attributes.rb
index 2dbebfcaf8..d2065d701f 100644
--- a/activerecord/lib/active_record/nested_attributes.rb
+++ b/activerecord/lib/active_record/nested_attributes.rb
@@ -220,7 +220,7 @@ module ActiveRecord
# validates_presence_of :member
# end
module ClassMethods
- REJECT_ALL_BLANK_PROC = proc { |attributes| attributes.all? { |_, value| value.blank? } }
+ REJECT_ALL_BLANK_PROC = proc { |attributes| attributes.all? { |key, value| key == '_destroy' || value.blank? } }
# Defines an attributes writer for the specified association(s). If you
# are using <tt>attr_protected</tt> or <tt>attr_accessible</tt>, then you
@@ -239,7 +239,8 @@ module ActiveRecord
# is specified, a record will be built for all attribute hashes that
# do not have a <tt>_destroy</tt> value that evaluates to true.
# Passing <tt>:all_blank</tt> instead of a Proc will create a proc
- # that will reject a record where all the attributes are blank.
+ # that will reject a record where all the attributes are blank excluding
+ # any value for _destroy.
# [:limit]
# Allows you to specify the maximum number of the associated records that
# can be processed with the nested attributes. If the size of the