я делаю что-то вроде этого:Rails - как получить случайные записи из объекта?
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 раз, чтобы выбрать случайное число, более эффективный, чем запуск запроса 400 раз в MySQL.
Но - как избавиться от этой ошибки?
NoMethodError (private method `rand' called for #<User::ActiveRecord_Relation:0x007fbab27d7ea8>):
Спасибо заранее
Сколько строк имеет эта таблица в целом? Являются ли основные идентификаторы в этой таблице завершены или имеются пробелы (вы удалили записи)? – spickermann