Я обновляю свое приложение от rails3 до rails4. В friendship.controller.rb У меня есть строка @friend = User.find (params [: friend_id]) Несомненно, это должно идентифицировать друга с идентификатором, соответствующим значению friend_id в таблице дружеских отношений. Он возвращает пробел. User.find (params [: id]) возвращает 340, который является идентификатором дружбынайти в Rails4 не работает как ожидалось
Любые идеи?
enter code here
`class FriendshipController < ApplicationController include ProfileHelper before_filter :setup_friendsdef create Friendship.request(@user, @friend) user = @user friend = @friend #MakeMailer.friend_request(user,friend).deliver flash[:notice] = "Friend request sent." redirect_to user_path(@user.id) end def accept if @user.requested_friends.include?(@friend) Friendship.accept(@friend, @user) flash[:notice] = "Friendship with #{@friend.login} accepted!" else flash[:notice] = "No friendship request from #{@friend.login}." end redirect_to user_path(@user.id) end def decline if @user.requested_friends.include?(@friend) Friendship.breakup(@user, @friend) flash[:notice] = "Friendship with #{@friend.login} declined" else flash[:notice] = "No friendship request from #{@friend.login}." end redirect_to user_path(@user.id) end def cancel if @user.pending_friends.include?(@friend) Friendship.breakup(@user, @friend) flash[:notice] = "Friendship request canceled." else flash[:notice] = "No request for friendship with #{@friend.login}" end redirect_to user_path(@user.id) end def delete if @user.friends.include?(@friend) Friendship.breakup(@user, @friend) flash[:notice] = "Friendship with #{@friend.login} deleted!" else flash[:notice] = "You aren't friends with #{@friend.login}" end redirect_to user_path(@user.id) end private def setup_friends @user = @current_user @friend = User.where(:id => params[:friend_id]) end `
`
вы можете разместить код для контроллера дружбы? –
Выполнено Я надеюсь, что помогает – gleb
ваша модель Пользователь и Дружба? любая ассоциация? если да, то вы можете напрямую получить доступ к 'current_user.friend.fields_of_friend_table' и не использовать @ для current_user, если вы используете devise. или вы можете использовать объект @user, если таблицы связаны –