我有用户,群组和users_groups。这是hasAndBelongsToMany关系。所有内容都应该关联,但是在登录时会出现SQL错误,因为它试图在users表中找到不存在的group_id。
通过users_groups表进行关联。有没有人遇到过这个问题?
它应该加入users_groups而不是在users表中查找group_id。
错误:
SQLSTATE [42S22]:未找到列:1054'on子句'中的未知列'User.group_id'
SQL查询:
SELECT `User`.`id`, `User`.`username`, `User`.`password`, `User`.`email`, `User`.`is_active`, `User`.`created`, `User`.`modified`, `Group`.`id`, `Group`.`name`, `Group`.`description`, `Group`.`active`, `Group`.`created`, `Group`.`modified`, `Group`.`parent_id` FROM `seotools`.`sa_users` AS `User` LEFT JOIN `seotools`.`sa_groups` AS `Group` ON (`User`.`group_id` = `Group`.`id`) WHERE `User`.`username` = 'mhardy' AND `User`.`password` = 'f30d110154184d05759871e97bfec0a72e8c317a' LIMIT 1
答案 0 :(得分:0)
将HABTM表更改为“groups_users”,更改为follow cake conventions。
此新连接表的名称需要包含两个模型的名称 涉及,按字母顺序排列,并用下划线分隔(_ )。表的内容应该是两个字段,每个外键 (应该是整数)指向两个主键 参与模型
或使用用户和组模型中的重叠选项将表名保持为“users_groups”。