m:nの関連があるテーブルbooksとテーブルauthorsがあるとします。
中間テーブル「authors_books」を作成し、それぞれのモデルにはhas_and_belongs_to_manyを設定しています。
著者「hoge」が書いた本の一覧を取得したい場合、
authors = Authors.whre(:author => "hoge")
books = authors.books
のようにすれば、本の一覧が取得できることは確認できました。
今回やりたいのは、取得する本についての条件を加えて一覧を取得することです。
たとえば著者「hoge」のカテゴリー(category)が「1」である本の一覧を取得したい場合、
どのような実装で実現できるでしょうか。
Ruby:1.9.2
Rails:3.0.5
ActiveRevord:3.0.5
コメント(1件)
>authors = Authors.whre(:author => "hoge")
>books = authors.books
>のようにすれば、本の一覧が取得できることは確認できました。
上記のコードは間違いでした。
authors.each do |author|
words = author.words
end
上のようにしないと取得できませんね。