2013-04-01 2 views
16

Sto tentando di eliminare più record nel mio database dalla console di Rails. So che posso fare User.find (1). Distruggere. Cosa succede se voglio eliminare tutti gli utenti con ID 100 - 200. C'è un modo per farlo nella console?Elimina più record dalla console di Rails

risposta

35

Si può fare qualcosa come User.delete_all("id > 100 AND id < 200").

+3

Oppure: 'User.where (" id> 100 AND id <200 "). Delete_all' – Mischa

+0

Questo ha funzionato, grazie! – Sara

+2

Ricorda che 'delete_all' e' delete' non eseguiranno callback, mentre 'destroy_all' e' destroy' le eseguiranno. Nella maggior parte dei casi, vorrai usare 'destroy_all' e non saltare i callback. –

0

Nuova sintassi in Rails 5 è la sintassi Mischa cita nel suo commento: User.where("id > 100 AND id < 200").delete_all

condizioni di passare alla delete_all saranno deprecati in Rails 5.1.