在Rails 3中,如何获取控制器的`index`动作的路径?

Clo*_*boy 2 routing ruby-on-rails ruby-on-rails-3

在我的routes.rb:

get 'contact/index'
Run Code Online (Sandbox Code Playgroud)

如果重要,contact那么控制器只有一种index方法; 它具有相应的模型.

在我的布局文件中:

<%= link_to 'Contact', contact_path %>
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误:

undefined local variable or method `contact_path'
Run Code Online (Sandbox Code Playgroud)

我必须给我的路线别名吗?如果是这样,我该怎么做?

the*_*eIV 7

你需要使它成为一个命名路线.例如:

match 'contact' => 'contact#index', :as => :contact
Run Code Online (Sandbox Code Playgroud)

我不知道你是否真的希望在URL中有"索引",所以我删除了它.您还需要在相应的控制器和操作中映射您的URL.