提供category_id等于一的随机条目

时间:2011-02-27 23:45:07

标签: ruby-on-rails

我正在寻找一种方法来获得一个随机数据库条目(Video),其category_id等于我提供的一个。

我目前用于获取随机视频的代码,

def self.random()
  @count = self.count()
  self.find(:first, :offset => rand(count))
end

此代码非常适合查找随机视频,但我需要将其约束为具有我提供的:category_id的视频。

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

可能是这样的

@category = Category.find(params[:id])
@category.videos[rand(count)]

我是铁杆菜鸟,所以我不知道,也许有更有效的方法来做到这一点

答案 1 :(得分:0)

在您的videos_controller.rb

def random_video
    category_id = params[:category_id] #or however you are getting the id
    @video = Video.find(:random, :conditions => ['category_id=?', category_id])
    render :action => 'show'
end