Вопрос

У меня есть две таблицы, которые связаны как HABTM:

  • Группы (ID, имя)
  • Потоки (идентификатор, поток)

Подключение таблицы:

  • groups_streams (id, group_id, stream_id)

Есть другая модель, называемая пользователями, которые Hasone Group.

От пользовательского контроллера я пытаюсь получить потоки, связанные с группой пользователя.

$streams = $this->User->Group->find('list', array('conditions' => array(`User.group_id` => 2)));

Я делаю это, но я получаю ошибку MySQL:

Ошибка SQL: 1064: у вас есть ошибка в синтаксисе SQL; Проверьте руководство, которое соответствует вашей версии MySQL Server для правильного синтаксиса для использования рядом '= 2' в строке 1

SQL Query:

SELECT `Group`.`id` FROM `groups` AS `Group` WHERE = 2  

Я запутался :(

Это было полезно?

Решение

Я бы предпочел пойти с:

$streams = $this->Stream->Group->find('list', array('conditions' => array('Group.id => 2));

Другие советы

Вам нужно обернуть User.group_id в цитатах в вашем 'conditions' множество:

$streams = $this->User->Group->find('list', array(
    'conditions' => array('User.group_id' => 2)
));
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top