0

ユーザーと各ユーザー HABTM ロールを含む Rails アプリがあります。

特定のロールを持たないユーザーを選択したい。検索ロジックを自由に使用できますが、道に迷っています。条件と結合とインクルードの組み合わせを使用してみましたが、それを釘付けにすることはできません。これは機能します:

User.find(:all, :conditions => ['role_id != ?', Role[:admin].id], :joins => :roles)

管理者ではないが、役割のないユーザーを見つけられないユーザーを見つけるため (これも見つけたい)。

疲れた状態で欠けている単純なことは何ですか?

4

3 に答える 3

0

できます

User.all - User.find(:all, :conditions => ['role_id = ?', Role[:admin].id], :joins => :roles)

これは、2つのクエリで必要なことを達成します。これは、このプロジェクトではおそらく問題ありませんが、1つのクエリに到達できれば、それは素晴らしいことです。

于 2009-07-15T17:06:14.223 に答える