如何显示特定类别的帖子

时间:2019-05-15 12:01:02

标签: ruby-on-rails ruby

我试图仅显示来自特定类别ID的帖子

我有一个类别部分,我具有类别和发布工作之间的关系,我只想显示特定类别的ID,而不是调用所有帖子。

我已经尝试过了,但是没有用。

<% @posts.each do |post| %>
    <h5><td><%=link_to post.category(1).title, post %></td></h5>
<% end %>

2 个答案:

答案 0 :(得分:0)

在您的代码中:

<% @posts.each do |post| %>
    <h5><td><%=link_to post.category(1).title, post %></td></h5>
<% end %>

...这部分看起来可疑:category(1)。如果发布归属所属类别,请尝试以下操作:

post.category.title

如果帖子具有has_many(或has_and_belongs_to_many)类别,请尝试以下操作:

post.categories.first.title

这两个中的一个应该给您您想要的。

除此之外,我不确定您是否尝试链接。您正在链接到帖子,但链接文本是类别标题。因此,如果您在“食谱”类别中有三个帖子,则所有三个链接都将显示“食谱”。您是要链接到该帖子还是该类别?无论哪种方式,链接文本都应与网址相关。

答案 1 :(得分:0)

如果您想显示具有类别ID的帖子,这应该有所帮助

<% Post.where(category_id: 1).each do |post| %>

其中1是类别ID