Rails の ActiveRecord で 孫モデルやひ孫モデルに join や include する方法

1 min読了の目安(約700字TECH技術記事

関係図

AAAs
┣BBBs
┃ ┣CCCs
┃ ┃ ┗FFFs
┃ ┗DDDs
┗GGGs

やり方

AAAs.includes(:BBBs) # 子
AAAs.includes(BBBs: :CCCs) # 孫
AAAs.includes(:GGGs, BBBs: [:CCCs, :DDDs]) # 子と孫たち
AAAs.joins(BBBs: [{CCCs: :FFFs}, :DDDs]) # ひ孫もあるとこう

参考