У меня есть две модели и таблица соединений, User
, Post
и posts_users
.UpdateAll и HABTM в CakePHP
В таблице posts_users
содержится несколько дополнительных полей, в том числе is_active
. Я хочу, чтобы все сообщения пользователей активно, при условии, что пользователь активен.
У меня есть следующий
$this->Post->PostsUser->updateAll(array('PostsUser.is_active' => 1), array('PostsUser.user_id' => $data['User']['id'], 'User.is_active' => 1));
Что вызывает ошибку MySQL
Warning (512): SQL Error: 1054: Unknown column 'User.is_active' in 'where clause' ...
Query: UPDATE
posts_sites
ASPostsUser
SETPostsUser
.is_active
= 1 WHEREPostsUser
.user_id
= 1 ANDUser
.is_active
= 1
Как вы можете видеть таблицу Пользователь не получает включилась в запросе. Есть ли проблемы вокруг этой проблемы?
Это была автогенерированная модель, я создал файл модели с соответствующими ассоциациями, и теперь он работает, хорошая работа! – DanCake