我有一个真正奇怪的路线行为。我发现了我认为导致错误的线路 以下是问题中的行(在application.html.erb中):
<%= link_to "Official Top", :controller => "tops", :action => "show", :id => 10 %>
如果我想使用设计登录,当我转到此链接时会出现问题:
http://localhost:3000/users/sign_in
using <%= link_to "sign in", new_user_session_path %>
如果没有这一行,一切都很好,但是当行存在时我就会遇到这个错误:
No route matches {:controller=>"devise/tops", :action=>"show", :id=>10}
这条线的连接是什么oO为什么要混合设计和顶部?这条线怎么会给设计路线带来麻烦?真的很奇怪...除了我所有的路线似乎都很好
new_user_session GET /users/sign_in(.:format) devise/sessions#new
top GET /tops/:id(.:format) tops#show
答案 0 :(得分:1)
请尝试:
<%= link_to "Official Top", :controller => "/tops", :action => "show", :id => 10 %>
我认为添加“/”将解决您的问题,因为它现在正在搜索Devise目录中的Tops控制器...使用“/”,它将搜索“home controllers”目录而不是