Так тоже самое же написано, только с добавкой.
А преимущество в том, что AR в один запрос сможет получить всех пользователей, купивших, например, определённый товар.
Ну, только нейминг чуть поменять, чтобы, кмк, понятней было:
class User
has_many :orders
has_many :purchased_products, through: :orders, source: :product