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 !)
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