This patch adds a button_to URL helper. Button_to has the same calling semantics as link_to and makes it as easy to create POST-powered buttons as it is to create links. It is designed to be a drop-in replacement for link_to for those situations where using a link would be unsafe, e.g., to trigger the deletion of a record. (See Section 9.1.1, "Safe Methods" of RFC 2616 - HTTP/1.1 for the full details.)
This patch is important because it provides a virtually zero-cost way for developers of Rails applications to "do the right thing" and avoid unsafe linking practices (which, as we have seen, can have disastrous, data-losing consequences). It is not a perfect solution, but it is effective for almost all real-world cases where unsafe links occur in Rails applications.
For more explanation, please see Taking the unsafe GETs out of Rails.