Ruby Freaks Lounge 第43回 Rails 3を支える名脇役たち その1 - Arel - 2010年6月29日 松田明 Ruby, Rails Ruby, Rails, named 1 2 3 Arelで生まれ変わったActiveRecord 3 最後に,話をActiveRecord 3に戻して,Arelが実際にどう活用されているかを見てみまし... 続きを読む
同じ名前のカラムがあるモデルに関連があるとする。FooとBarがあってそのどちらにもname属性があるようなケース。 Foo.where(:name => 'baz') これはもちろん問題なく実行できる。次のような関連を使う場合でも特に問題は起きない。 Foo.joins(:bar).where(:nam... 続きを読む
Using the rails 3 style how would I write the opposite of: Foo.includes(:bar).where(:bars=>{:id=>nil}) I want to find where id is NOT null. I tried: Foo.includes(:bar).where(:bars=>{:id=>!nil}).to_sql But that returns: => "SELECT \"foos\".* F... 続きを読む
Ruby Freaks Lounge 第43回 Rails 3を支える名脇役たち その1 - Arel - 2010年6月29日 松田明 Ruby, Rails Ruby, Rails, named 1 2 3 Arelを使ってみよう さて,それでは,さっそく生のArelを実際に使ってみましょう。 例えば,以下のようなデータベースがあっ... 続きを読む
Ruby, Rails | 09:40 | (この記事は Ruby Advent Calendar jp:2010の 15 日目です。前日は tomohiro68 さんでした。)ArelとはArelの概要については@a_matsudaさんのgihyoの記事を参照してください。http://gihyo.jp/dev/serial/01/ruby/0043はじめに扱うRDBは... 続きを読む
HTTP Git Read-Only This URL has Read+Write access 続きを読む
rails 3.0.0、arel 1.0.1 です。Rails 3 の ActiveRecord 周りと Arel について知るために、簡単な find 系のメソッドの実行の流れを見てみます。引用しているコードは見やすいように改変してます。 準備まずデータベースとテーブルを作ります。 % sqlite3 book... 続きを読む
Ruby Freaks Lounge 第43回 Rails 3を支える名脇役たち その1 - Arel - 2010年6月29日 松田明 Ruby, Rails Ruby, Rails, named 1 2 3 はじめに Ruby on Railsの2年半ぶりのメジャーバージョンアップである3.0の正式リリースがいよいよ間近に迫ってきました。 R... 続きを読む
The upcoming version 3 of Ruby on Rails will feature a sexy new querying API from ActiveRecord. Here is an example: User.order('users.id DESC').limit(20).includes(:items) You can see that all queries are now chainable. This has two principal ... 続きを読む