キモブロ

Please spy check please, Fucking retard

DataMapperだとこんな感じや

たとえばchannelsってテーブルがあったとして、ChannelってModelを作った場合で考える

channels = Channel.all
channels.each do |ch|
  ch.name
end

みたいな感じのコードを書いたとしても実際に発行されるSQLは以下のようになる

kimoto ~/tmp[27601]% !ru
ruby sample.rb
(0.000365) SELECT `id`, `name` FROM `channels` ORDER BY `id`

こういう仕組みもないO/Rマッパーを使ってたら、どこまでもSQLを意識しないと駄目だし、O/Rマップじゃなくて単にハッシュで受け取ってるだけだよねって思いますね。それってSQL Wrapperやん。


以下これのsampleコード


追記:

あ、このサンプルだと遅延評価の例になってないし、どのO/Rマッパーでも一緒だった!
あとで書き直す