【发布时间】:2015-06-11 17:28:32
【问题描述】:
这将标签限制为标签数量最多的前 20 个标签:
tag.rb
scope :top_20, -> {
where("taggings_count != 0").order("taggings_count DESC").limit(3)
}
然后我想根据他们的:id 而不是他们的 tagging_count 来订购这 20 个
application_controller
before_action :tag_cloud
def tag_cloud
@tags = Tag.all.top_20.order(:id)
end
.order(:id) 不幸的是不起作用。它们仍然按计数降序显示。
_tags.html.erb
<% tag_cloud(@tags, %w(css1 css2 css3 css4)) do |tag, css_class| %>
<%= link_to tag.name, tag_path(tag), :class => css_class %>
<% end %>
如果您需要进一步的代码或解释来帮助我,请告诉我:-]
【问题讨论】:
标签: ruby-on-rails ruby tags tag-cloud