2011-12-18 20 views
0

memoized_finderメソッドを実装しようとしていて、わかりにくいエラーが発生しています。memoized_finderメソッドでエラーを取得する

私の方法は次のとおりです。

SyntaxError: (eval):3: odd number list for Hash. @sire ||= find(:all, :conditions => {conditions.inspect}) 

私の周りGoogleで検索しましたが、間違っているものを思い付くことができません:これは、次のエラーが生じている

class Module 
def memoized_finder(name, conditions=nil) 
class_eval <<-STR 
    def #{name}(reload=false) 
    @#{name} = nil if reload 
    @#{name} ||= find(:all, :conditions => #{conditions.inspect}) 
    end 
STR 
end 
end 

注:使用している方法は、Active Record Associationの拡張に関する素晴らしい記事から来ています。誰かが見たいと思っている場合のリンクは次のとおりです。http://weblog.jamisbuck.org/2007/1/9/extending-activerecord-associations

ありがとうございました。

答えて

0

私のjrubyインストールは、memoized_finderメソッドと互換性のないバージョンのレールに基づいています。

関連する問題