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
宝石が動作しない
は、これは私が今しようとしているものを設定しているが、これはまだ動作しません。
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
はまだこれを取得する動作するはずです:
また新しいfriendly_idバージョンでは、私はこのようなプロファイルが見つける必要がエラー「IDなしのプロファイルを見つけることができませんでした」と送信されるパラメータは '{" id "=>" gurmukh-singh "}'です。 idは '1'なんか何かのようなものでなければいけません。名前が'(params [:profile_id]) 'を見つけようとしたために渡された理由はわかりません –
フレンドリーIDがスラッグを作ったのでそれは一つではありません – MZaragoza
'id'がparamsの通過は' slug'ですが、 'slugged'という名前で格納されている' id'がないので、それを見つけることができません。 –