2017-09-14 2 views
0

Ich bin mir nicht sicher, warum das aktuelle Benutzer Benutzer nicht falten kann. Wenn "unfollow" Schaltfläche geklickt wird, wird die Seite geroutet/Freundschaften friend_id = 2 und diese Fehlermeldung: Keine Route treffer [ENTF] "/ Freundschaften" erscheintRuby on Rails: Folgen Sie den Benutzern

_user.html.erb

<%= link_to "Unfollow", friendships_path(friend_id: user.id), method: :delete, data: { confirm: "Are you sure?" }, class:"btn btn-md btn-danger" %> 

Freundschaft Controller

def destroy 
    @friendship = Friendship.find_by(id: params[:id]) 
    @friendship.destroy 
    flash[:notice] = "Removed friendship." 
    redirect_back fallback_location: root_path 
end 

routes.rb

resources :friendships, only: [:create, :update, :destroy] 

schema.rb

create_table "friendships", force: :cascade do |t| 
    t.integer "user_id" 
    t.integer "friend_id" 
    t.boolean "accepted", default: false 
    t.datetime "created_at", null: false 
    t.datetime "updated_at", null: false 
    end 

Antwort

1

Sie können

<%= link_to "Unfollow", friendship_path(current_user.friendships.find_by_friend_id(u‌​ser.id)), :method => :delete, data: { confirm: "Are you sure?" }, class:"btn btn-md btn-danger" %> 
mit singulären friendship_path nicht Pluralform (friendships_path) versuchen