MerbでORMとしてDataMapperを使っている場合は、 コントローラのアクションが、以下のように仮引数でパラメータを受け取るようなデザインになっています。

   1    def show(id)
   2      @user = User.get(id)
   3      raise NotFound unless @user
   4      display @user
   5    end

このとき、Merbは、merb-action-argsというモジュールを使い、 仮引数idの名前をしらべ、Railsでいうところのparams[:id]の情報をもってきます。

merb-action-args は、以下のようにUnboundMethodの仮引数を取得します。

   1  def foo(id, bar); end
   2  method(:foo).get_args
   3  #=> [[[:id], [:bar]], []]

内部的には ruby2ruby を使っている模様。これはすごい。

See Also

posted by Png genki on Thu 20 Nov 2008 at 17:35

Comments:

or Preview
Social Bookmarks
  • Delicious
  • B_entry1057
  • Clip_16_12_w
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ