Ho una domanda che carica migliaia di oggetti e voglio domarlo utilizzando find_in_batches
:ActiveRecord: alternativa a find_in_batches?
Car.includes(:member).where(:engine => "123").find_in_batches(batch_size: 500) ...
Secondo la documentazione, non posso avere un ordine di ordinamento personalizzato: http://www.rubydoc.info/docs/rails/4.0.0/ActiveRecord/Batches:find_in_batches
Tuttavia, ho bisogno di un ordinamento personalizzato di created_at DESC
. Esiste un altro metodo per eseguire questa query in blocchi come fa in find_in_batches in modo che non tutti gli oggetti vivano contemporaneamente nell'heap?
Ottima domanda. Hai guardato [questa gemma] (https://github.com/dburry/each_batched)? Solo circa 5.000 download quindi potrebbe richiedere un po 'di lavoro. Se non ottieni una risposta migliore e finisci per provare questo, sarebbe interessante sapere come ha funzionato. –
Si sta tentando di eseguire un ordinamento personalizzato sulla query originale (in modo da estrarre 500 alla volta in un ordine specifico) o di ordinare i risultati restituiti (ordinare solo i 500)? – creativereason
Ordinamento della query originale, non solo del lotto – Edmund