我正在写一个表单,当它到达内容控制器时,我似乎错过了我的params [:id]。
这是我的routes.rb:
match '/site/content/myaction/:id', :to => 'contents#myaction'
表单是“myaction”,它位于部分_edit.html.erb:
中<%= form_tag :action => 'myaction' do %>
<input id="old_id" name="myaction_name" type="text" />
<%= submit_tag 'Submit' %>
<% end %>
在我提交表单之前:/site/content/edit/:id/
在我点击提交后,我在错误页面,我在:/site/content/myaction/
它在内容控制器中得到了myaction但是我得到了id为null的错误......这里是params:
{"utf8"=>"✓",
"old_id"=>"2",
"commit"=>"Submit",
"id"=>nil}
我缺少什么?似乎也许它没有选择我的路线?那怎么重新指导......
非常感谢任何建议。
答案 0 :(得分:1)
您需要将ID传递给表单的网址:
form_tag :action => 'myaction', :id => 5 do