【Ruby】Ruby on Rails Part8at PHP
【Ruby】Ruby on Rails Part8 - 暇つぶし2ch379:nobodyさん
09/11/07 17:02:18
>>375
ちょっと試したいだけなら heroku の無料プラン。

>>377
その書き方の場合、named_scope は module ModelSupport のスコープで実行される。
実行されるというのはメソッドが呼ばれるという意味ね。
例)
module Hoge
puts "hoge"
end
#=> hoge

単なるモジュールな ModelSupport は named_scope を知らないので undefined method になる。
で、どうすればいいかというとリフレクションを使う。

module ModelSupport
def self.included(base)
base.class_eval do
named_scope :new_post, lambda{|num| {:limit => num}}
end
end
end

module が include されたときに included が呼ばれるので、
class_eval を使って base(=includeしたクラス)のコンテキストで name_scope を呼ぶ。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch