如何在Rails中每个标签下面的帖子上显示acts_as_taggable标签?

时间:2015-06-21 22:50:07

标签: ruby-on-rails ruby ruby-on-rails-4 acts-as-taggable-on

我正在使用gem acts_as_taggable_on。我有它设置和正常工作。我正在尝试创建一个页面,列出所有标签以及它们所属的每个标签下面的帖子?

(标记1)

  • 标记为标记1
  • 标记为标记1
  • 标记为标记1

(标签2)

  • 标记为标记2
  • 标记为标记2
  • 标记为标记2

(标签3)

  • 标记为标记3
  • 标记为标记3
  • 标记为标记3

这是我的代码我在一个页面上显示所有标签,但我无法在标签下方显示帖子?

标签控制器:

def index
    @tag   = current_user.owned_tags
    @posts = current_user.posts.tagged_with(@tag.name)
end

标记索引视图:

<div class="tag-lists">
    <% @tag.each do |tag| %>

        <div><%= tag.name %></div>

        <% @posts.each do |post| %>
            <div><%= post.title %></div>
        <% end %>

    <% end %>
</div>

1 个答案:

答案 0 :(得分:0)

您需要为每个标记迭代每个帖子

控制器上的

def index
    @user  = current_user
    @tags  = @user.owned_tags
end    
你的观点

<div class="tag-lists">
    <% @tags.each do |tag| %>

        <div><%= tag.name %></div>

        <% @user.posts.tagged_with(tag.name).each do |post| %>
          <div><%= post.title %></div>
        <% end %>

    <% end %>
</div>