嗨,我有这种行为......
<%= link_to image_tag("image.png"), brain_path(1), :method => "put" %>
产生
<a href="/brain.1" onclick="var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.met ...[many rails code]... ;return false;"><img alt="Research_4" src="/images/image.png" /></a>
a href =“/ foobar.1”这是一个奇怪的部分:(任何想法导致这个问题?
rake路线提供以下内容:
new_brain GET /brain/new(.:format){:controller =&gt;“brains”,:action =&gt;“new”}
edit_brain GET /brain/edit(.:format) {:controller=>"brains", :action=>"edit"}
brain GET /brain(.:format) {:controller=>"brains", :action=>"show"}
PUT /brain(.:format) {:controller=>"brains", :action=>"update"}
DELETE /brain(.:format) {:controller=>"brains", :action=>"destroy"}
POST /brain(.:format) {:controller=>"brains", :action=>"create"}
答案 0 :(得分:0)
你如何路线你的foobar? (单数或复数?资源还是资源?)
您确定使用的是foobar_path(1)
,而不是foobars_path(1)
(单数形式)
foobars_path(1)
将返回 /foobars.1 和foobar_path(1)
- / foobar / 1
我认为你必须使用brain_path(1)
而不是brain_path(1)
<强> UPD 强>
更改您的route.rb
map.resources :brain
如果你将你的控制器重命名为复数大脑会更好 - 当你使用资源时它更常规