Railsのfindで複数のテーブルから検索する:includeでeager loading
Ruby on Rails でデータベースから検索を行う場合、通常は Model.find メソッドを使いますが、複数のテーブルを組み合わせて検索する方法をメモしておきます。
今回考えるのは、people(人)と entries(ブログの記事)という2つのテーブルがあり、people テーブルの要素 age(年齢)と entries テーブルの要素 created_at(投稿日時)の2条件で絞るという場合です。例えば「現時点で20歳未満の未成年が2010年4月1日以降に投稿したブログ記事を検索する」みたいな。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | # people entries +----+-----+ +----+-----------+---------------------+ | id | age | | id | person_id | created_at | +----+-----+ +----+-----------+---------------------+ | 1 | 24 | | 1 | 1 | 2010-07-01 10:11:12 | | 2 | 18 | | 2 | 2 | 2010-01-01 10:11:12 | | 3 | 48 | | 3 | 3 | 2010-09-01 10:11:12 | | 4 | 17 | | 4 | 4 | 2010-06-01 10:11:12 | | 5 | 20 | | 5 | 5 | 2010-03-01 10:11:12 | | 6 | 23 | | 6 | 6 | 2010-08-01 10:11:12 | | 7 | 19 | | 7 | 7 | 2010-09-01 10:11:12 | | 8 | 29 | | 8 | 8 | 2010-02-01 10:11:12 | | 9 | 31 | | 9 | 9 | 2010-04-01 10:11:12 | | 10 | 22 | | 10 | 10 | 2010-05-01 10:11:12 | +----+-----+ +----+-----------+---------------------+ # a person has many entries |
本物のアウトプットはこんな風にはなりませんがご愛嬌ということでご勘弁を。
……続きを読む »
WordPressでシンタックスハイライト:WP-Syntaxを使ってみた
これまでブログで何かのコードを書いていても単に <pre> タグで括って CSS で等幅フォント指定しているだけでしたが、最近 Ruby やら Rails やらのコードも書くようになったので憧れの(?)シンタックスハイライターを導入してみました。
このブログは WordPress を使っているので、きっと素晴らしいプラグインがあるはずだ! ということで、探してみたらありましたよ。WP-Syntaxなるプラグインが。
……続きを読む »
![[画像] 今日の気になる記事「きにきじ」QR Code](http://www.kagitaku.com/diary/images/qrcode.png)
![[画像] きにきじ Feed](http://www.kagitaku.com/diary/images/Newspaper_Feed_128x128_ie6.png)
![[画像] kagitaku.com ロゴ](http://www.kagitaku.com/common/images/logo.png)





![[画像] 最上部へ](http://www.kagitaku.com/common/images/pageNavi-toTop.png)
![[画像] 最下部へ](http://www.kagitaku.com/common/images/pageNavi-toBottom.png)
![[画像] 履歴を戻る](http://www.kagitaku.com/common/images/pageNavi-back.png)
![[画像] 履歴を進む](http://www.kagitaku.com/common/images/pageNavi-forward.png)
![[画像] Contact](http://www.kagitaku.com/common/images/pageNavi-contact.png)
![[画像] Sitemap](http://www.kagitaku.com/common/images/pageNavi-sitemap.png)