Удаление ассоциаций ActiveRecord по одному запросу


Обычно, если мы задаем :dependent => :destroy или :dependent => :delete AR, вызываем запрос DELETE для каждой строки ассоциации. Если мы используем ModelName.delete(batch_of_ids) AR, вызовите одиночный resuest, как DELETE ... FROM ... WHERE ... IN (batch_of_ids). Есть ли возможность уничтожить ассоциацию одним запросом без определения собственных методов? Например, что-то вроде activerecord-import gem, но для удаления.

1 2

1 ответ:

Можно использовать dependent: :delete_all для удаления всех записей в одном запросе.