Rails - 使用实际对象参数从数据库中查找

时间:2014-02-19 14:40:05

标签: ruby-on-rails models

一旦我在我的应用中观看视频,例如/ videos / 7,我就像要显示与正在观看的视频类别相同的其他视频。

所以在我的控制器中使用:

def show
    @category_videos = Video.where("category = Video.category")
end

在我看来使用

<% @category_videos.each do |n| %>
  ...
<% end %>

但它没有用,有什么建议吗?对不起,我刚接触到rails。

2 个答案:

答案 0 :(得分:2)

我认为你应该首先找到视频,然后找到属于该类别的所有视频

def show
  @video = Video.find params[:id]
  @category_videos = Video.where(["category_id = ? && id NOT IN (?)", @video.category_id, @video.id])
end

答案 1 :(得分:0)

我认为你有

Video belongs_to category
Category has_many videos

@video = Video.find(params[:id])
@category_videos = @video.category.videos