发生了一些非常奇怪的事情。以下代码:
$this->Behaviors->load("Containable");
$this->contain(array(
"UsersVersion"=>array("FilesUsersVersion")
)
);
$draft=$this->findById($document_id);
抛出以下错误:
Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'FilesUsersVersion.users_version_id' in 'field list'
SQL Query: SELECT `FilesUsersVersion`.`id`, `FilesUsersVersion`.`template_id`, `FilesUsersVersion`.`name`, `FilesUsersVersion`.`text`, `FilesUsersVersion`.`created`, `FilesUsersVersion`.`modified`, `FilesUsersVersion`.`users_version_id` FROM `drafts` AS `FilesUsersVersion` WHERE `FilesUsersVersion`.`users_version_id` IN (119, 120)
分析SQL时,它正在查询错误的表,而字段(users_version_id
除外)来自drafts
表而不是files_users_version
表。
我已经清除了缓存/模型和缓存/持久性。
为什么会发生这种情况?
答案 0 :(得分:0)
没关系。错误发生在关联className。
谢谢。