私はacts_as_taggable_on gemを使用しています: https://github.com/mbleigh/acts-as-taggable-on
特定の投稿にタグを表示しようとしていますが、エラーがスローされます:
undefined method `tag_counts_on' for #<Array:0x007fa5d4ac3088>
意見:
<% tag_cloud @vote_feed_items.tag_counts_on(:tags).order('count desc').limit(15), %w[a b c] do |tag, css_class| %>
<%= link_to tag.name, tag_path(tag.name), class: css_class %>
<% end %>
コントローラ:
@user = User.find(params[:id])
@vote_feed_items = @user.vote_feed
ユーザーモデル:
def vote_feed
Micropost.unscoped.from_microposts_voted_for_by(self)
end
マイクロポストモデル:
def self.from_microposts_voted_for_by(user)
find_by_sql("select m.* from microposts m
join (SELECT voteable_id, updated_at FROM votes WHERE voter_id = #{user.id} AND voteable_type = 'Micropost') z on z.voteable_id=m.id
order by z.updated_at desc")
end
find_by_sql は配列を返していますか? もしそうなら、私はこれを別の方法で書く必要がありますか?