2009-12-19 41 views
1

我使用的是帶rails 2.3.5的acts_as_taggable_on_steroids插件來構建標籤雲,我不熟悉它們的視圖循環的語法。我無法找到解釋該循環的任何紅寶石文檔。LocalJumpError,在Rails 2.3.5上使用acts_as_taggable標籤雲

當我運行下面的代碼,我得到這個「沒有給出塊」的錯誤。

LocalJumpError in Tags#index 
Showing app/views/tags/index.html.erb where line #10 raised: 
no block given 

我想我需要將tag_cloud方法添加到我的routes.rb文件中,但這並沒有解決問題。

控制器:

class PostController < ApplicationController 
    def tag_cloud 
     @tags = Post.tag_counts 
    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 %> 

回答

0

貌似TagsHelper在插件沒有被列入,儘管我將其納入ApplicationHelper。

我剛剛將函數tag_cloud複製到了我的TagsHelper中,它工作正常。

爲什麼我不明白,循環是因爲它是一個方法調用與循環鏈接到它。 想像是這樣的

<% tag_cloud(@tags, %w(css1 css2 css3 css4)) do |tag, css_class| %> 
    <%= link_to tag.name, tags_path(tag), :class => css_class %> 
<% end %>