• ブログ
  • ふぉとす
  • キーワード
  • ブックマーク
  • 写真
  • ログイン

Title

« ARのwhere区を簡単に扱えるようになる「Ez-Where2」に触れてみた | デュアルディスプレイなしでは生きられない »
  • Rails2.1の新機能、named_scopeを試してみた 2008-06-03 23:41:03

    okyuuにコメントしてくれた人に教えてもらったのだけど、Rails2.1のARにはnamed_scopeという機能が追加されたらしい。
    というわけでさっそくRails2.1にアップデートしてどこでもお気に入りで試してみた。

    class Category < ActiveRecord::Base
      DEFAULT_NAME = "無分類"
      named_scope :default, :conditions => {:title => DEFAULT_NAME}
    end
    

    とモデルに書いておけば、

      @category = @user.categories.default.first
    

    こう書けます。これは、

      @category = @user.categories.find(:first, :conditions => ["title = ?", Category::DEFAULT_NAME])
    

    と同じ意味です。これはコードがすっきりしていいですね。
    ブロックを使えば、値を動的に変化させることもできます。

      named_scope :title_select, lambda {|t| {:conditions => ["title = ?", t]}}
    

    こうしておけば、

      @category = @user.categories.title_select(Category::DEFAULT_NAME).first
    

    こう書けるのです。
    named_scopeはfind(:all)として働くようなので、配列が返ってくる点に注意しなければなりません。
    ちなみに、上のコードだとSQL文には「limit 1」が付与されていた。firstまで見てSQL文を構築しているのか。Railsは頭がいいなあ。

    Commentコメント(0) Pageリンク元(228) Append 497
  • 英文法のトリセツ ~とことん攻略編
    メディア: 単行本
    ATOK X for Linux
    メディア: CD-ROM
« ARのwhere区を簡単に扱えるようになる「Ez-Where2」に触れてみた | デュアルディスプレイなしでは生きられない »

プロフィール

おおいしつかさ

Amazon商品の一覧

人気の記事ベスト10

  • 1.apache+mod_proxy_balancer+mongrelでRailsを動かす方法
  • 2.Perlでevalを使ってみる
  • 3.バージョン管理をsubversionからgitに移行してみた
  • 4.tokyobikeのドロップハンドル化
  • 5.ubuntu8.04でデュアルディスプレイを使う
  • 6.restful_authenticationを使ってみた
  • 7.URLなど、長い英字を折り返して表示する方法
  • 8.Rspecでコントローラのspecファイルを書く
  • 9.RailsとPostfixで受信メールを処理する方法
  • 10.フラグメントキャッシュをRailsで使う。

コメント

  • ユル(プログラマが若隠居をしたら)
  • ユル(風邪ひいた)
  • ユル(バイクがへたくそになっていた)
  • おおいしつかさ(便利になって不便になる)
  • 武石(便利になって不便になる)
  • ユル(劇場版 天元突破グレンラガン)
  • ユル(フラニーとゾーイー (新潮文庫): サリンジャー, 野崎 孝: 本)

過去の記事

2006年
12月
2007年
1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2008年
1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月

キーワード一覧

ActionScript AmazonResources git javascript kaeruspoon milook NSR Objective-C Rails Ruby Ruby on Rails subversion Thin tokyobike ubuntu VAIO VAIO typeZ Waves Xen ぐりぐり カンタロー スノボー ドトール ドライブ バイク プログラミング ユルさん 執筆 日本酒 模型 真中洋嗣 自転車

Youtube

ニコニコ動画