我使用的是act-as-taggable-on gem。试图了解标签是如何在4个css类别之间分配的。如本例所示:https://github.com/mbleigh/acts-as-taggable-on#tag-cloud-calculations。
决定分配给每个css类别的标签数量的算法是什么?我可以将css类别的数量从4个更改为6个吗例如,我可以这样做吗:
<% tag_cloud(@tags, %w(css1 css2 css3 css4 css5 css6)) do |tag, css_class| %> <%= link_to tag.name, { :action => :tag, :id => tag.name }, :class => css_class %> <% end %>
基本上,css类别的分配是如何分配的?我已经看过文档了,还没有找到答案。
发布于 2017-05-14 02:53:53
tag_cloud方法源代码为:
def tag_cloud(tags, classes)
return [] if tags.empty?
max_count = tags.sort_by(&:taggings_count).last.taggings_count.to_f
tags.each do |tag|
index = ((tag.taggings_count / max_count) * (classes.size - 1))
yield tag, classes[index.nan? ? 0 : index.round]
end
end
end这意味着您可以根据需要传递任意多的类。您可以找到源here。
https://stackoverflow.com/questions/43956738
复制相似问题