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