@Konboi memo

主に技術に関してつらつらと。

Active Record でよしなにとれた!

先日

acitve recordでよしなにできないかなーと悩んでいたけど、いけたのでメモしておく。

select を使う

結論から言うと .select() を使って解決できた。 先日のブログから

 Persons.joins( :unkos ).where( :id => 1 )

このactive record の書き方だと

 SELECT persons.* FROM persons INNER JOIN ON unkos ON persons.id = unkos.person_id where persons.id = 1

このような結果になっていた。

それをselectを使うと

 Persons.joins( :unkos ).where( :id => 1 ).select('*')

このように書けて、求めていたデータが取得できた。