thoughtbot/guides — pull request #165 by mike-burns (2014-05-07 07:28:57+00:00)
Title: Do not use before_destroy and friends

We never check whether a `#destroy` fails in our controllers:

def destroy
article = Article.find(params[:id])
article.destroy
redirect_to articles_url
end

Because of this history, it would cause confusion and potential bugs if
we introduced a `before_destroy` into any of our models. Not only will
we need to check the result of `#destroy` for any controller using that
model, but we'd also need to check the return value for any controller
using models that associate with that model.

This commit clearly states our stance on this: we do not expect a
`#destroy` to fail in a recoverable manner.