【发布时间】:2012-11-21 02:22:07
【问题描述】:
我正在尝试创建一个允许用户直接从索引页面编辑客户端条目的功能。当用户单击“编辑”时,将呈现部分内容,该部分内容将元素替换为输入文本字段。但是当按下“更新客户端”按钮时,我得到了错误:
"No route matches [POST] "/clients/27"
我能够直接从索引中创建新客户端和销毁客户端...更新操作我做错了什么?
部分:
<tr id="test">
<%= form_for Client.find(27), :method => :PUT do |f| %>
<td class="input">
<%= f.text_field :name, :value => "Test" %>
</td>
<td class="input">
<%= f.text_field :company %>
</td>
<td class="input">
<%= f.text_field :email %>
</td>
<td class="grayedOut"></td>
<td class="actions">
<%= f.submit "Confirm edit" %>
</td>
<% end %>
</tr>
routes.rb 文件:
resources :clients do
resources :projects do
resources :items
end
end
【问题讨论】:
-
你检查过 config/routes.rb 吗?
-
试试
:method => :put,而不是:PUT。 -
如果这不起作用,您可以发布您的 rake 路线吗?
-
我也尝试过 :method => :put 但没有帮助。我目前在我的工作计算机上,所以我无法访问“rake routes”,但我的 routes.rb 文件非常标准。外观如下:
resources :clients do resources :projects do resources :items end end
标签: ruby-on-rails ruby ruby-on-rails-3 forms