【发布时间】:2015-05-05 09:53:09
【问题描述】:
我正在做这样的事情:
data = Model.where('something="something"')
random_data = data.rand(100..200)
返回:
NoMethodError (private method `rand' called for #<User::ActiveRecord_Relation:0x007fbab27d7ea8>):
一旦我得到这个随机数据,我需要遍历这些数据,如下所示:
random_data.each do |rd|
...
我知道有一种方法可以在 MySQL 中获取随机数据,但是我需要选择 400 次这样的随机数据,所以我认为从数据库加载一次数据和 400 次选择随机数比运行在 MySQL 上查询 400 次。
但是 - 如何摆脱这个错误?
NoMethodError (private method `rand' called for #<User::ActiveRecord_Relation:0x007fbab27d7ea8>):
提前谢谢你
【问题讨论】:
-
该表总共有多少行?该表中的主 ID 是否完整或是否存在间隙(您是否删除了记录)?
标签: mysql ruby-on-rails ruby arrays random