Wenn die Leistung für Sie wichtig ist und/oder wenn Sie arbeiten auf einem großen Datensatz, den Sie DELETE_ALL über destroy_all bevorzugen sollte.
Destroy_all wird eine DELETE-Abfrage nacheinander ausführen. Es kann also sehr langsam sein. Weitere Details zu den Unterschieden zwischen delete_all und destroy_all finden Sie unter on this page.
Da die @M Kumar's Antwort wird mit der neuen Schiene Version veraltet sein.
Model.delete_all(["col_name in (?)", [1,2,5,6]])
DEPRECATION WARNING: Passing conditions to delete_all is deprecated and will be removed in Rails 5.1.
Dieser Befehl könnte anderes in der Zukunft helfen:
Model.where(id: [1,2,5,6]).delete_all
Die Antwort richtig, aber nur für Wissen gehen durch die Differenz von DELETE_ALL und destroy_all hat, ist. Dies würde Ihnen helfen: http://stackoverflow.com/questions/6698207/delete-all-vs-destroy-all –