通常在rails项目中,我有一个“内容”控制器,其中包含各种页面,如关于我们页面,联系我们页面和介绍页面等。
我经常做类似
的事情match '/content/:action', :controller => 'content'
在routes.rb文件中,但我不知道如何在我的视图中引用它。
引用它们的目的是什么? 是吗:
= link_to "Help", '/dashboard/help'
或者我是否需要为这些内容创建命名路由?
答案 0 :(得分:0)
不,您不需要命名路线,但这是惯例。您也可以执行以下操作:
<%= link_to "Help", {controller: 'dashboard', action: 'help' } %></li>
在路线文件中,它看起来像:
match '/help', to: 'dashboard#help'
只要你以某种方式映射它,即使做resources :dashboard
它也会有效。这里有一点额外的帮助the guide on Routing in Rails。您还可以使用rake routes
命令列出所有路线,它将列出如下路线:
help /help(.:format) static_pages#help
about /about(.:format) static_pages#about
contact /contact(.:format) static_pages#contact
这意味着,在这种情况下,您可以使用help_path,about_path和contact_path。
答案 1 :(得分:-1)
是的,您最好使用
创建命名路由:as => "dashboard_help"
并且在你的路线中你会有
link_to "Help", :dashboard_help_path