aboutsummaryrefslogtreecommitdiffstats
path: root/guides/source/upgrading_ruby_on_rails.md
diff options
context:
space:
mode:
authorJavan Makhmali <javan@javan.us>2013-05-24 12:41:54 -0300
committerJavan Makhmali <javan@javan.us>2013-05-24 12:41:54 -0300
commit03dbd8af56c8c45f8b39aa6e081656bd13c06c4a (patch)
tree05401a426ec484c0156667901446740b94d8d687 /guides/source/upgrading_ruby_on_rails.md
parent432ffdb0739426122e216e0f7199ebc16f15de7e (diff)
downloadrails-03dbd8af56c8c45f8b39aa6e081656bd13c06c4a.tar.gz
rails-03dbd8af56c8c45f8b39aa6e081656bd13c06c4a.tar.bz2
rails-03dbd8af56c8c45f8b39aa6e081656bd13c06c4a.zip
Add note about upgrading custom routes from `put` to `patch`.
Diffstat (limited to 'guides/source/upgrading_ruby_on_rails.md')
-rw-r--r--guides/source/upgrading_ruby_on_rails.md18
1 files changed, 18 insertions, 0 deletions
diff --git a/guides/source/upgrading_ruby_on_rails.md b/guides/source/upgrading_ruby_on_rails.md
index 6c3e763f53..84526b595b 100644
--- a/guides/source/upgrading_ruby_on_rails.md
+++ b/guides/source/upgrading_ruby_on_rails.md
@@ -41,6 +41,24 @@ So, in Rails 4 both `PUT` and `PATCH` are routed to update. We recommend
switching to `PATCH` as part of your upgrade process if possible, as it's more
likely what you want.
+Note, when using `form_for` to update a resource in conjunction with a custom route,
+you'll need to update your route to explicity match the `patch` verb:
+
+```erb
+<%= form_for [ :update_name, @user ] do |f| %>
+ ...
+<% end %>
+```
+
+```ruby
+resources :users do
+ # Rails 3
+ put :update_name, on: :member
+ # Rails 4
+ patch :update_name, on: :member
+end
+```
+
For more on PATCH and why this change was made, see [this post](http://weblog.rubyonrails.org/2012/2/25/edge-rails-patch-is-the-new-primary-http-method-for-updates/)
on the Rails blog.