将行为的标签数量限制为可标记的

jim*_*jim 4 tags plugins ruby-on-rails ruby-on-rails-plugins

我想知道如何限制标签的数量,tag_cloud函数为此插件返回.http://github.com/collectiveidea/acts-as-taggable-on

另外,我想知道如何订购,以便按最高计数对标签进行排序.所以最受欢迎的是顶部.

我试着做@tags = Post.tag_counts_on(:tags,:limit => 5),但这不起作用.

控制器:

class PostController < ApplicationController
  def tag_cloud
     @tags = Post.tag_counts_on(:tags)
  end
end
Run Code Online (Sandbox Code Playgroud)

视图:

 <% tag_cloud @tags, %w(css1 css2 css3 css4) do |tag, css_class| %>
    <%= link_to tag.name, { :action => :tag, :id => tag.name }, :class => css_class %>
 <% end %>
Run Code Online (Sandbox Code Playgroud)

谢谢!

Voy*_*yta 6

确保您使用的是github的最新插件版本.它确实在那里工作,并且它在某些早期版本中不起作用.

然后最高计数的前5名将是:

@tags = Post.tag_counts_on(:tags, :limit => 5, :order => "count desc") 
Run Code Online (Sandbox Code Playgroud)