Предлагаю вам ознакомиться с # accepts_nested_attributes_for .Пример там по сути то, что вы хотели.Это переписано:
class Post < ActiveRecord::Base
has_many :comments
accepts_nested_attributes_for :comments, :allow_destroy => true
end
post = Post.find(1) # With 3 comments
post.comments_attributes = [{:_destroy => "1", :id => post.comments.first.id}]
# Look ma! No SQL statements!
post.save!
# BEGIN / UPDATE posts / DELETE FROM comments WHERE id = X / COMMIT