1

私は以下を実行しようとしていますが、私は取得し続けます

"NoMethodError:#/ Foo:0x86f69ba/の未定義のメソッド`bar ='"

    class Class
    def my_attr_accessor(name)

    attr_name = name.to_s  
    attr_reader name       
    attr_reader "my_"+name 
    class_eval %Q"def #{name}=(val)
                 @#{name}=val
                 end"
      end

    end

私は実際にこの投稿に似たものを使用しています:Ruby-class_evalを使用してメソッドを定義する

編集:あなたはまったく正しいです私はこれを反映するために変更を加えました..どうもありがとう。

4

1 に答える 1

3

class_evalはメソッドですが、ここで変数を割り当てています ( class_eval =)

于 2013-01-20T07:41:05.577 に答える