Joh*_*hir 4 activerecord ruby-on-rails arel ruby-on-rails-3
这是一个Rails2查询:
Foo.find_by_bar_and_baz('a-bar', 'a-baz', :select =>'count(*) as the_count' ).the_count.to_i
Run Code Online (Sandbox Code Playgroud)
查询很难看,但最终的SQL是理想的.
在Rails 3/Arel中有更优雅的方法吗?
编辑
这更漂亮但仍然没有Arel魔法:
Foo.count( :conditions => "bar = 'a-bar' and baz = 'a-baz'" )
Run Code Online (Sandbox Code Playgroud)
Foo.where(['bar = ? and baz = ?', 'a-bar', 'a-baz']).count
Run Code Online (Sandbox Code Playgroud)