HABTM 条件付き検索
-
25-09-2019 - |
質問
HABTM として関連付けられた 2 つのテーブルがあります。
- グループ(ID、名前)
- ストリーム(id, ストリーム)
接続テーブル:
- groups_streams(id, group_id, stream_id)
HasOne Group を持つ Users と呼ばれる別のモデルがあります。
ユーザー コントローラーからユーザーのグループに関連するストリームを取得しようとしています。
$streams = $this->User->Group->find('list', array('conditions' => array(`User.group_id` => 2)));
これを実行しているのですが、MySQL エラーが発生します。
SQLエラー:1064:SQL 構文にエラーがあります。1 行目の「= 2」付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。
SQL クエリ:
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)
));
所属していません StackOverflow