0

object.send(invoked_method_name)とても便利です。しかし、私はクラスのようにそれをする必要がありModel.send(method_name_by_variable)、これは私にはできません。何かアドバイス?ありがとう

4

1 に答える 1

0

Model.send(method_name_by_variable)可能であれば

  • method_name_by_variableの範囲内にありますModel

それをテストする方法(私Stringは私の例で使用しますが、 Modelisは同じである必要があります。

範囲

メソッドがパブリックメソッドであるかどうかをテストします。

method_name_by_variable = :new
p String.public_methods.include?(method_name_by_variable) #-> true
p 'aa'.public_methods.include?(method_name_by_variable)  #-> false
于 2012-11-16T14:29:32.877 に答える