Чем includes/preload/eager_load отличается от joins и когда что выбирать?

Ruby / RailsMiddleActive Record и базы данныхСравнениеactive record и базы данных|includes/preload/eager_load|ruby|rails

Что хотят услышать интервьюеры:

Сравнение: «includes/preload/eager_load» обычно оценивают в паре с joins. Выбор зависит от читаемости, Rails conventions, стоимости поддержки, безопасности, нагрузки и тестируемости.

Ответ:

Когда выбирать includes/preload/eager_load: когда его свойства прямо решают задачу, а не просто выглядят привычно.

Плохой ответ: «так принято в Rails» без объяснения последствий.

users = User.includes(:orders).to_a

Источники

Похожие вопросы