我有這樣的代碼。未定義的方法`find_each'for []:Array
@deliveries = User.find_uniq_deliveries(...)
.
.
.
(many conditions added using 'named_scope')
@deliveries.sort do |a,b|
.
.
end
的主要問題是,這是獲取大量結果,並給予甲骨文例外,超過1000個元素中不允許「在」語句。 所以我試圖用find_each分批
deliveries_list = []
@deliveries.find_each(:batch_size=999) do |delivery|
deliveries_list.push(delivery)
end
@deliveries = deliveries_list
獲取但這給人的例外
未定義的方法`find_each」爲[]數組
正如你所看到的感到相當新的鐵路(來自java)和鐵路完全沒有意義。我能做些什麼來防止的Oracle SQL錯誤,但獲取數據
編輯:
def find_uniq_deliveries(category,date,view)
dels = []
sent_deliveries.send("for_#{category}s").send("with_#{category}_status", view).for_date_range(date).collect(&:workflow_item).uniq.each do |m|
dels << m.deliveries.first unless m.deliveries.empty?
end
dels.compact
end
完整的回溯應該列出出現錯誤的文件名和行號。你的for_each在find_uniq_deliveries裏面嗎?我懷疑Ruby或Rails中存在for_each。 –
這是我的錯誤,對不起!它的find_each。 – Skeptor
錯誤位於使用排序的行中。 – Skeptor