HABTM已超卖。很多时候它无法满足需求,例如当您要存储其他数据时。您最好在模型之间建立一个hasMany / belongsTo关系。
摘自CakePHP书:
HABTM变得复杂时该怎么办?
默认情况下,保存HasAndBelongsToMany关系时,Cake将在保存新行之前删除联接表上的所有行。例如,如果您有一个包含10个子级的俱乐部。然后,您更新有2个孩子的俱乐部。俱乐部只有2个孩子,没有12个孩子。
还要注意,如果要向联接中添加更多字段(创建联接或添加元信息时),可以通过HABTM联接表来实现,但是了解这一点很重要,这一点很重要。
实际上,两个模型之间的HasAndBelongsToMany是通过hasMany和belongsTo关联而关联的三个模型的简写。
在您的情况下,我建议您
LineItem建立模型并以这种方式加入所有内容:
Order
有很多LineItem
LineItem
属于Order
,Product



