小编cap*_*zed的帖子

从ruby/rails中的数组加权随机选择

我在Rails中有一个模型,我想从中选择一个随机条目.到目前为止,我已经使用这样的命名范围完成了它:

named_scope :random,  lambda { { :order=>'RAND()', :limit => 1  } }
Run Code Online (Sandbox Code Playgroud)

但是现在我在模型中添加了一个整数字段"权重",表示每行应该被选中的概率.

我现在怎么做加权随机选择?

我已经在snippets.dzone.com上找到并尝试了两种扩展Array类并添加加权随机函数的方法,但两种方法都不起作用或为我选择随机项.

我正在使用REE 1.8.7和Rails 2.3.

ruby random ruby-on-rails

3
推荐指数
1
解决办法
2157
查看次数

标签 统计

random ×1

ruby ×1

ruby-on-rails ×1