Я как бы застрял на создании файла tag_cloud
. Я пытался сделать это как в документации acts_as_taggable_on
. Вы можете найти его здесь: https://github.com/mbleigh/acts-as-taggable-on (прокрутите вниз до раздела "Расчеты облака тегов").
Мой пост-помощник:
module PostHelper
include ActsAsTaggableOn::TagsHelper
end
Мой пост-контроллер:
def tag_cloud
@tags = Post.tag_counts_on(:tags).order('count desc').limit(20)
end
Единственное, что я изменил здесь из документации, это сделать так, чтобы отображались 20 самых популярных тегов.
Представление индекса моих сообщений:
#alltags
-tag_cloud(@tags, %w(css1 css2 css3 css4)) do |tag, css_class|
=link_to tag.name, { :action => :tag, :id => tag.name }, :class => css_class
и я получаю следующую ошибку: undefined method 'empty?' for nil:NilClass
#alltags
-tag_cloud(@tags, %w(css1 css2 css3 css4)) do |tag, css_class|
=link_to tag.name, { :action => :tag, :id => tag.name }, :class => css_class
красным цветом на странице ошибки выделена эта строка: -tag_cloud(@tags, %w(css1 css2 css3 css4)) do |tag, css_class|
Я действительно не понимаю, что я делаю неправильно, поскольку я точно следую документации, и поиск в Интернете, похоже, мне тоже не помогает. Я нашел одно решение, но я действительно не хочу делать это таким образом, я чувствую, что должен быть другой, лучший способ. Это решение в этом вопросе о стеке: -index-page-in-ruby-on">Как отобразить облако тегов из Acts as Taggable On на индексной странице в Ruby on Rails 3.2.7?
Я чувствую, что это как-то связано со мной, использующим рельсы 4, но я не уверен.
Любое предложение будет приветствоваться! Заранее спасибо.
.html.haml
Код конвертируется из .erb в .haml, это не должно быть проблемой. - person Tijmenh   schedule 28.05.2014