虽然在rake路线中可用,但奇怪的路由错误

时间:2012-04-23 06:42:02

标签: ruby-on-rails routing nested-resources

我有

<li><%= link_to "Messages", user_messages_path %></li>

在我的routes.rb中我有

  resources :users do
    resources :messages
    member do
      get :following, :followers
    end
  end

当我做耙路线时,它说......

user_messages GET    /users/:user_id/messages(.:format)      messages#index

错误很奇怪,因为如果我在layouts文件夹中的_header partial上添加list item标签,那么访问我的根页会出错

No route matches {:controller=>"messages"}

但是,如果我访问网址

http://localhost:3000/users/1/messages

我能够看到该页面。我还有一个名为messages_controller.rb的控制器。

有没有人知道什么是错的?感谢

1 个答案:

答案 0 :(得分:3)

您必须向用户提供user_messages_path,例如

<li><%= link_to "Messages", user_messages_path(@user) %></li>