2013-09-24 20 views
0

我正試圖顯示每個Tag a Question已在跨度。我使用acts_as_taggable_on顯示Acts_as_taggable標籤seperatly

我設法讓下面的代碼工作,但它是一個標籤雲。意思是顯示所有的標籤。

<% tag_cloud Question.tag_counts, %w[s m l] do |tag, css_class| %> 
    <span class="label label-default"> 
     <%= link_to tag.name, tag_path(tag.name), class: "css_class" %> 
    </span> 
    <% end %> 

要檢索標籤:

question.tag_list 

有人可以幫助我重構代碼,以便只對問題的現有標記顯示?

+1

http://chat.stackoverflow.com/rooms/37968/http-stackoverflow-com-questions-18989790-display-acts-as-taggable-tags- seperat – rmagnum2002

回答

1

question.tag_list會返回給你一個字符串,並且你不能循環它。

question.tags將返回一個陣列,

<% question.tags.each do |tag| %> 
    <span class="label label-default"> 
     <%= link_to tag.name, tag_path(tag.name), class: "css_class" %> 
    </span> 
<% end %> 
+0

工作,感謝您的洞察力。 –

0

我不知道這個插件,但是我在代碼片段中看到的一個問題一般是,您不是在特定對象@question上運行,而是在類Question上運行。如果我不得不猜測,我會說這是你問題的根源。

編輯:

所以,我剛剛簽出創業板的文檔,我發現這個代碼片斷直接出現:

<% 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

嘿,這是標籤雲的特定代碼。它工作得很好。我正在努力如何顯示一組哈希,每個哈希分開。 <%question.tag_list each do%>類似的東西.. –