我正在尝试获取没有属性和反射的Rails模型中定义的方法列表。
到目前为止我的代码如下,但它只显示了数据库列和has_many等定义。我也需要模型中的自定义方法。
class.reflections.keys.each do |key|
define_method key do
@object.send key
end
end
class.attribute_names.each do |sym|
define_method sym do
@object.send sym
end
end
我尝试了“.methods”等,但它包含或排除了我定义的方法。
答案 0 :(得分:0)
使用MyClass.instance_methods(false)
,但如果您不希望它返回超类中定义的方法,请确保将false
作为参数传递。
此外,对类方法使用MyClass.singleton_methods(false)
。
更多信息: