has_many with :dependent => :nullify

Hi all,

There is something confusing with has_many in the current API : When deleting a record with association.delete, the corresponding association's foreign key is nullified. However, if has_many has the :dependent option set (to any value), the association's destroy method is called instead. This is awfully inconsistent with the behavior expected when setting :dependent to :nullify.

While browsing the Trac database, I found several patches submitted to address this issue : http://dev.rubyonrails.org/ticket/5209 (1 year old !) http://dev.rubyonrails.org/ticket/7309 These patches look good to me, but still haven't been applied. Is there any good reason for this ? If not, it would be nice if someone could take care of this :wink:

While browsing the Trac database, I found several patches submitted to address this issue : http://dev.rubyonrails.org/ticket/5209 (1 year old !) http://dev.rubyonrails.org/ticket/7309 These patches look good to me, but still haven't been applied. Is there any good reason for this ?

I closed the old patch and added myself to 7309, the patch needs some reviews and could do with some &:id love instead of the more verbose {|r| r.id}.