I had a lot of trouble dealing with relationship deletion myself. It seems like a dark area in activerecord