繁体   English   中英

rails 3.1路由问题

[英]rails 3.1 routing issue

当我在Web浏览器(跨多个浏览器)中查看页面时,导航栏会在链接别名旁的括号内重复路由路径。 (即显示About(关于))。 这是我用于导航栏的代码

  <li><%= link_to "About", about_path %></li>
  <li><%= link_to "Contact", contact_path %></li>
  <li><%= link_to "Help", help_path %></li> 

match '/contact', :to => 'pages#contact'
match '/about',   :to => 'pages#about'
match '/help',    :to => 'pages#help'

root :to => 'pages#home'

我检查了rails api,此语法似乎正确。 链接本身工作正常。 我已经重新启动服务器,这是一个在多个浏览器之间仍然存在的问题。 我的测试套件完全通过。 我似乎无法弄清楚为什么这个问题仍然存在。

编辑:这也不会出现在页面源中的任何地方,所以我不知道它是如何显示的。 好吧,这变得更奇怪了,似乎对于以html编码的出站链接仍然如此。 如果我尝试编码

 <a href="www.example.com>example</a>    

看起来像“ example www.example.com”。 这看起来是一个更一般的链接问题。

您可以尝试命名它们

match '/contact', :to => 'pages#contact', :as => "contact"
match '/about',   :to => 'pages#about', :as => "about"
match '/help',    :to => 'pages#help', :as => "help"

如果这样做没有帮助,请使用rake routes查看您的路线,看看是否可以为您指明正确的方向。

编辑:

您可以尝试:

link_to "Contact", :controller => "pages", :action => "contact"

就像一种健全检查。

此问题是由于指南针宝石中的错误所致,请参阅上面的评论以获取完整详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM