HABTM är översålt. Många gånger klarar den inte behoven, till exempel när du har ytterligare data att lagra. Du kommer att bli bättre av att göra en hasMany/belongsTo-relation mellan modellerna.
Taget från CakePHP-boken:
I ditt fall skulle jag föreslå att du gör en LineItem
modellera och sammanfoga allt på det sättet:
Order
hasManyLineItem
LineItem
tillhörOrder
,Product