Съдържаем не е същото като JOIN .
Containable не обединява заявките в една заявка, но в по-голямата си част създава напълно отделни заявки , след което комбинира резултатите за вашето удоволствие от гледането.
Така че - според вашата грешка, в заявката, която се изпълнява на orders
таблица, няма Product.product_price
поле, защото тези полета са налични само в напълно отделна заявка.
Опитайте да използвате JOINs вместо това.