Ruby语法通过send接受动态生成方法的参数

时间:2011-09-22 08:50:08

标签: ruby syntax refactoring

如何通过send传递动态生成方法的参数?

下面我动态生成了几个方法,我希望他们接受“行”参数。

下面的代码生成方法,但我不知道方法如何接受“row”参数。

@sql_columns.each do |attr|
  (class << self; self end).send :define_method, attr do
    key = @column_mapping[attr].to_s
    row[key]
  end
end

1 个答案:

答案 0 :(得分:2)

(class << self; self end).send :define_method, attr do |row|