0

Im acts_as_follower gemとfriendly_id gemを使用しています。acts_as_followersとfriendly_id idが見つからない宝石

Ivがacts_as_followerを設定していて、すべてが正常に動作しているため、必要に応じてProfilesに従うことができます。しかし、今度はの宝石をprofile/1ではなくprofile/mynameと表示するようにプロファイルURLを追加しました。

しかし、今acts_as_follower宝石が動作しない

は、それはプロファイルIDが従うことを見つけることができません。

は、これは私が今しようとしているものを設定しているが、これはまだ動作しません。

def follow 
    @profile = Profile.find(params[:profile_id]) 
    current_user.follow(@profile) 
    redirect_to :back 
    end 

    def unfollow 
    @profile = Profile.find(params[:profile_id]) 
    current_user.stop_following(@profile) 
    redirect_to :back 
    end 

それはだった前に:

@profile = Profile.find(params[:id]) 

私は取得していますエラーは次のとおりです。

Couldn't find Profile with 'id'= 

渡されていることがありparamsは、次のとおりです。

{"id"=>"gurmukh-singh"} 

IDその今探しているのはフレンドリーなURLですあなたは

def follow 
    @profile = Profile.friendly.find(params[:id]) 
    current_user.follow(@profile) 
    redirect_to :back 
    end 

    def unfollow 
    @profile = Profile.friendly.find(params[:id]) 
    current_user.stop_following(@profile) 
    redirect_to :back 
    end 

にそれを変更する必要があり、あなたのコントローラで

def set_story 
    @profile = Profile.friendly.find(params[:id]) 
end 

答えて

1

その後、これは

+0

はまだこれを取得する動作するはずです:

また新しいfriendly_idバージョンでは、私はこのようなプロファイルが見つける必要がエラー「IDなしのプロファイルを見つけることができませんでした」と送信されるパラメータは '{" id "=>" gurmukh-singh "}'です。 idは '1'なんか何かのようなものでなければいけません。名前が'(params [:profile_id]) 'を見つけようとしたために渡された理由はわかりません –

+0

フレンドリーIDがスラッグを作ったのでそれは一つではありません – MZaragoza

+0

'id'がparamsの通過は' slug'ですが、 'slugged'という名前で格納されている' id'がないので、それを見つけることができません。 –

関連する問題