<% if current_user.vote_up?(@micropost) == true %>
を追加するための未定義のメソッドが現在取得中ですが、ここではマイクロポストコントローラで定義したため、何が原因であるのか不明です。助言がありますか?Rails:current_user.vote_up(@micropost)未定義のメソッド
Micropostコントローラ
def vote_up
@micropost = Micropost.find(params[:id])
current_user.vote_exclusively_for(@micropost)
current_user.vote_up(@micropost)
respond_to do |format|
format.html { redirect_to :back }
format.js
end
end
def unvote
@micropost = Micropost.find(params[:id])
current_user.vote_exclusively_against(@micropost)
current_user.unvote(@thred)
respond_to do |format|
format.html { redirect_to :back }
format.js
end
end
Micropost HTML
<% if current_user.vote_up?(@micropost) == true %>
<div class='<%=micropost.id %>'>
<a href="/microposts/<%=micropost.id %>/vote_up" data-remote='true' class='CounterButton b2'>
<span id="CounterIcon" class="<%=micropost.id%>"></span>
</a>
</div>
<% else %>
<div class='<%=micropost.id %>'>
<a href="/microposts/<%=micropost.id %>/unvote" data-remote='true' class='CounterButton b2'>
<span id="CounterIcon" class="<%=micropost.id%>"></span>
</a>
</div>
<% end %>
コントローラのアクションは、モデルのメソッドと何らかの形で同じだと思います(恐れ入りますが)。 – apneadiving