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

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

我试图做 @tags = Post.tag_counts_on(:tags, :limit => 5) 但这没有用。

Controller :

class PostController < ApplicationController
  def tag_cloud
     @tags = Post.tag_counts_on(:tags)
  end
end

看法:
 <% 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 %>

谢谢!

最佳答案

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

那么最高计数的前 5 名将是:

@tags = Post.tag_counts_on(:tags, :limit => 5, :order => "count desc")

关于ruby-on-rails - 限制作为可标记行为的标签数量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2893237/

10-13 07:17