我在Rails 3中开发并拥有一个具有以下结构的html文档:
<div id="one">
</div>
<div id="two">
</div>
<div id="three">
</div>
我可以通过转到以下地址链接到部分:/ index#one,/ index#two和/ index#three。是否可以在rails中提供这些特定的命名路由?类似的东西:
match '/one', :to => 'pages#index#one'
match '/two', :to => 'pages#index#two'
match '/three', :to => 'pages#index#three'
我宁愿实际命名路线,而不是将哈希放入地址栏,如果这是有道理的。
提前致谢。
答案 0 :(得分:2)
在视图中,您可以使用:anchor
参数修改命名路由,如下所示:
<%= link_to 'One', pages_path(:anchor => 'one') %>
我就是这样做的。
编辑:我想我误解了你的问题。您需要完全不同的URL,这些URL会重定向到同一页面上的不同锚点,对吗?
就个人而言,我认为这不是一个好主意,因为如果您有链接到文档中的不同部分,它们将产生页面重新加载,这对于锚点通常是不必要的。您还需要一些针对行为的JavaScript解决方法,如果按照常规方式完成,则由浏览器自动处理。