2010-10-26 4 views
1

Я использую act_as_taggable_on для добавления тегов к сообщениям, другие плагины/самоцветы с метками не работают с рельсами 3. Я могу редактировать/отображать теги в модели сообщений, а контроллер тегов отображает сообщения помечено именем ie/tags/post-tag-name /. Функциональность, которую я хочу, - это превратить теги на страницах сообщений в ссылки для отображения других сообщений с тем же тегом. Я следовал за учебником на сайтах «просто рельсы 2», которые используют act_as_taggable_on_steroids, но я застрял со следующей ошибкой;Проблемы с тегами Rails 3, actions_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> 

также пытается добавить облако тегов в тегах/index.html, как описано здесь http://github.com/mbleigh/acts-as-taggable-on gi ves me ошибка маршрутизации;

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: синтаксическая ошибка, неожиданное ключевое слово_енд, ожидающее') 'Извлеченный источник (вокруг строки # 1): 1: <% = link_to, tag_path (: id => tag.name)%> –

+0

Ваша ссылка_то неправильно, вы не привязываетесь ни к чему. должно быть: <% = link_to tag.name, tag_path (: id => tag.name)%> – numbers1311407

+0

спасибо, глупая вещь, которую нужно упустить, но у меня все еще есть ошибка облака тегов –

Смежные вопросы