我烘焙了一个图像,画廊和galleries_images模型,并将它们与HABTM协会联系起来,但我相信我在某个地方犯了错误。
尝试访问images / view / 1页面时返回以下错误。
错误:SQLSTATE [42S22]:找不到列:1054'on clause'中的未知列'GalleriesImage.image_id'
SQL查询:SELECT Gallery
。id
,Gallery
。category
,GalleriesImage
。id
,GalleriesImage
。{ {1}},galleries_id
。GalleriesImage
FROM images_id
AS galleries
加入Gallery
AS galleries_images
ON(GalleriesImage
。{{ 1}} = 1 AND GalleriesImage
。image_id
= GalleriesImage
。gallery_id
)
我相信最后Gallery
。id
= GalleriesImage
。gallery_id
应该是
Gallery
。id
= 1
我对此非常陌生,所以任何关于我应该在哪里寻找或任何探索的提示都将不胜感激。
谢谢!
答案 0 :(得分:0)
hasAndBelongsToMany基本上只是两组不同的hasMany和belongsTo。
我自己的cakephp webapp有30多个奇怪的桌子让我放弃使用hasAndBelongsToMany。
我通过JOin模型选择了hasMany。见here
另外,为了更好地回答您的问题,最好在问题中重现模型关系和 - > save()代码。
仅仅使用sql语句是不够的。