2017-01-23 19 views
0

私のレール5アプリの投稿コメントにacts_as_votableを追加しようとしています。 宝石が、細かいインストール私は2つのマイグレーション(ActsAsVotableとAddCachedLikesToVotes)を添加し、私のCommentsControllerに私が追加されました:私はその後、私のコメント部分図にこれを追加acts_as_votableエラールートと一致するルートがありません5

def like 
    @post = Post.find(params[:post_id]) 
    @comment = @post.comments.find(params[:id]) 
end 

def vote 
    if !current_user.lked? @comment 
    @comment.liked_by current_user 
    elsif current_user.liked? @comment 
    @comment.unliked_by current_user 
    end 
end 

を:

<%= link_to like_post_comment_path(@post, comment), class: "like-btn", method: :put, remote: :true do %> 

私の誤差があります上記の行のために。

{:action => "vote"、:controller => "comments"、:id => nil、:post_id => "1"}必要なキーがない:[:id ]

like_post_comment_pathが正しいと私は(@post, comment)の間でさまざまなバリエーションを試してみた、(@comment.post_id, comment)(@post, @comment)、などと何も動作します!

+1

をお試しください'(@post、@comment)'がまだ動作しないと仮定すると、あなたの@comment変数は定義されていません。デバッグして、 '@ comment'または' comment'の値を確認してください。 – mmichael

+0

コントローラに定義されていますか?私はそれが定義されているとはかなり確信していますが、私は間違っている可能性があります。 – DianaBG

+0

コメント[:id]がないようですが、それが存在するかどうかを確認する方法がわかりません。私はエラーなしでユーザーとしてコメントを作成できたので、それができたと思いました。 – DianaBG

答えて

0

ビューにアクセスするために使用しているURLは何ですか?この

<%= link_to like_post_comment_path(comment, poste_id: @poste.id), class: "like-btn", method: :put, remote: :true do %> 
+0

それは動作しませんでした:/ – DianaBG

+0

それは同じエラーです。私はmmichaelが正しいコメントであると思います。あなたがあなたがbinding.pryを使うことができるレールでデバッグする方法を知らないのであれば、pry gemをインストールしてコメントの値を確認してください。 –

+0

私は、異なるエラー。 – DianaBG

関連する問題