2010-10-26 96 views
1

我正在使用acts_as_taggable_on爲帖子添加標籤,其他標記插件/寶石無法使用rails 3.我可以在帖子模型上編輯/顯示標籤,並且標籤控制器顯示帖子標籤名稱ie/tags/post-tag-name /。 我想要的功能是將帖子頁面上的標籤變爲鏈接,以顯示具有相同標籤的其他帖子。 我跟着教程在sitepoints'簡單的軌道2'使用acts_as_taggable_on_steroids,但我堅持以下錯誤;Rails 3標記問題,acts_as_taggable_on

ActionView::MissingTemplate in Posts#show 
Missing partial acts_as_taggable_on/tags/tag with {:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]} in view paths "../app/views" 

Extracted source (around line #28): 

25: <div id="tags"> 
26: <% unless @post.tag_list.empty? %> 
27: <p class="tags"> 
28: <%= render :partial => @post.tags %></p> 
29: <% end %> 

...

class Post < ActiveRecord::Base 
    ... 
    acts_as_taggable_on :tags 
end 



class TagsController < ApplicationController 
     def show 
     @post = Post.tagged_with(params[:id]) 
     end 
end 

_tag.html.erb

<%= link_to, tag_path(:id => tag.name) %> 

帖子/ show.html.erb

<div id="tags"> 
<% unless @post.tag_list.empty? %> 
<p class="tags"> 
<%= render :partial => @post.tags %></p> 
<% end %> 
</div> 

也嘗試添加標籤雲在tags/index.html這裏描述http://github.com/mbleigh/acts-as-taggable-on gi給我一個路由錯誤;

No route matches {:action=>"tag", :id=>"news", :controller=>"tags"} 

回答

1

看起來你要使用:集合,這將導致整個列表與模板:

<div id="tags"> 
    <% unless @post.tag_list.empty? %> 
    <p class="tags"> 
     <%= render :partial => 'tag', :collection => @post.tags %> 
    </p> 
    <% end %> 
</div> 
+0

的SyntaxError在帖子#顯示顯示../app/views/tags/_tag.html .erb第1行出現的位置:../app/views/tags/_tag.html.erb:1:語法錯誤,意外的')',期待tCOLON2或'['或'。' ... to,tag_path(:id => tag.name)); @ output_buffer.to_s ...^../app/views/tags/_tag.html.erb:2:語法錯誤,意外的keyword_ensure,期待' )'..app/views/tags/_tag.html.erb:4:語法錯誤,意外的keyword_end,期待')'提取的源代碼(在第1行附近):1:<%= link_to,tag_path(:id => tag.name)%> – 2010-10-26 13:56:36

+0

你的link_to是錯誤的,你沒有鏈接到任何東西。需要是: <%= link_to tag.name,tag_path(:id => tag.name)%> – numbers1311407 2010-10-26 14:00:02

+0

謝謝,一個愚蠢的事情可以忽略,但我仍然有標籤雲錯誤 – 2010-10-26 14:08:08