路由错误 - 自定义控制器方法(在资源路由中添加自定义路由)
Routing Error - Custom Contoller Method (Adding Custom routes in resource routes)
我想将 link 添加到好友列表,但出现路由错误
No route matches {:action=>"friend_list", :controller=>"users_controller"}
users_controller
def friend_list
@frnds = User.find_friends(current_user)
end
路线
devise_for :users
resources :users do
member do
get :follow
get :unfollow
get :show
end
match 'users/:id/friend_list' => 'users#friend_list', via: [:get]
link
<li><%= link_to "Friends", :controller => :users_controller, :action => :friend_list%></li>
结束
匹配 'users/:id/friend_list' => 'users#friend_list',通过:[:get]
根 'home#front'
像这样使用集合块而不是成员块
resources :users do
collection do
get "follow"
get "unfollow"
get "show"
end
end
成员块将在路由中附加 :id
而收集块将允许您在 resource
路由中添加自定义路由
在link_to中使用这个
<%=link_to "Friends", controller: "users", action: "friend_list"%>
我想将 link 添加到好友列表,但出现路由错误
No route matches {:action=>"friend_list", :controller=>"users_controller"}
users_controller
def friend_list
@frnds = User.find_friends(current_user)
end
路线
devise_for :users
resources :users do
member do
get :follow
get :unfollow
get :show
end
match 'users/:id/friend_list' => 'users#friend_list', via: [:get]
link
<li><%= link_to "Friends", :controller => :users_controller, :action => :friend_list%></li>
结束 匹配 'users/:id/friend_list' => 'users#friend_list',通过:[:get] 根 'home#front'
像这样使用集合块而不是成员块
resources :users do
collection do
get "follow"
get "unfollow"
get "show"
end
end
成员块将在路由中附加 :id
而收集块将允许您在 resource
路由中添加自定义路由
在link_to中使用这个
<%=link_to "Friends", controller: "users", action: "friend_list"%>