2016-06-14 6 views
1

ich den Link an Freunde-Liste hinzufügen möchten, aber ich erhalte Routing-FehlerRouting-Fehler - Benutzerdefinierte Contoller-Methode (Hinzufügen von benutzerdefinierten Routen in Ressourcen Routen)

No route matches {:action=>"friend_list", :controller=>"users_controller"} 

users_controller

def friend_list 
    @frnds = User.find_friends(current_user) 
end 

Routen

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> 

Ende Spiel 'users /: id/friend_list' => 'Benutzer # friend_list', über: [: get] root 'Haus # Front'

Antwort

3

statt Block Verwendung Sammlung Blockelemente wie diese

resources :users do 
    collection do 
    get "follow" 
    get "unfollow" 
    get "show" 
end 
end 

Mitglied Block :id in Routing anhängen, während Sammlung Block Sie benutzerdefinierte Routen in resource Routen

in link_to Verwendung dieses

hinzufügen können
<%=link_to "Friends", controller: "users", action: "friend_list"%> 
+0

Immer noch den gleichen Fehler –

+0

Welchen Fehler haben Sie konfrontiert können Sie mir eine Fehlermeldung geben, was Sie haben? – uzaif

+0

Keine Route stimmt überein {: action => "friend_list",: controller => "users_controller"} –

Verwandte Themen