HABTM Encontre com uma condição
-
25-09-2019 - |
Pergunta
Eu tenho duas mesas relacionadas como HABTM:
- Grupos (ID, nome)
- Fluxos (ID, fluxo)
Tabela de conexão:
- grupos_streams (id, group_id, stream_id)
Há outro modelo chamado Usuários que Hasne Group.
Do controlador de usuário, estou tentando obter os fluxos relacionados ao grupo do usuário.
$streams = $this->User->Group->find('list', array('conditions' => array(`User.group_id` => 2)));
Estou fazendo isso, mas estou recebendo um erro do MySQL:
Erro SQL: 1064: Você tem um erro na sua sintaxe SQL; Verifique o manual que corresponde à sua versão do MySQL Server para obter a sintaxe correta para usar próximo '= 2' na linha 1
Consulta SQL:
SELECT `Group`.`id` FROM `groups` AS `Group` WHERE = 2
Estou confuso :(
Solução
Eu preferiria ir com:
$streams = $this->Stream->Group->find('list', array('conditions' => array('Group.id => 2));
Outras dicas
Você precisa embrulhar User.group_id
em citações dentro do seu 'conditions'
variedade:
$streams = $this->User->Group->find('list', array(
'conditions' => array('User.group_id' => 2)
));
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow