我正在尝试从不同的标签中获取多个帖子,然后是单个用户。
一个帖子有多个标签,例如:-
“没有粉笔的好浆果”(consumer web
,big data
)
“宣布干旱的有效方法”(consumer web
,sql
)
用户关注多个标签,例如:-
John关注 consumer web
,big data
因此,当 John 登录时,他会看到来自标签consumer web
和big data
. 在上面的示例中,John 的主页向他显示了以下结果。问题是它们是同一篇文章的重复结果。
“没有粉笔
的好浆果” “没有粉笔的好浆果”
导轨代码:
<% @tags.each do |mytag| %>
<% @posts = Post.tagged_with(mytag.name) %>
<% @posts.each do |post| %>
<div> <%= post.title %></div>
<% end %>
<% end %>
因此,当 John 登录时,控制器会确定他关注的标签并将这些标签传递给对象 (@tags)。然后上面的循环为每个标签运行两次并返回相同的帖子,因为它属于两个标签。
我想改进代码,即使它发现帖子属于多个标签,后跟同一个用户,它也只能返回 1 个结果。本质上是多个标签的唯一结果。请建议。