Rails change routing of submit in form_for

拜拜、爱过 提交于 2019-12-04 08:35:58

问题


I have a model 'Article' and a model 'Ratings' nested within articles.

/articles/123/ratings

I want to change the routing of the f.submit in ratings/_form.html.erb now it is so, that after pressing submit, my application routs to

/ratings/111

but I want to route it to

/article/123

How can I change the routing in a form_for f.submit button. I have found here something like this:

<% form_for :thing, :url => 
 url_for(:action => "update", :id => @thing) do |f| %>

But this do not work for my rails 3.2. Thanks for your help,


回答1:


:url - The URL the form is submitted to. It takes the same fields you pass to url_for or link_to. In particular you may pass here a named route directly as well. Defaults to the current action.

<% form_for :thing, :url => {:action => "update", :id => @thing} do |f| %>

you can also pass it the path_name by using the helper. so you can also do something like

:url => update_article_path(@article)



回答2:


Try form_for (:thing, url:{:controller=>'thing', :action=>'update'}, html:{method:'put'}).



来源:https://stackoverflow.com/questions/10414514/rails-change-routing-of-submit-in-form-for

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!