попробуйте расширить ActiveRecord, т.е.
#in lib/happy_columns.rb
module HappyColumns
def happy_columns(cols)
cols.each do |c|
before_filter "make_#{c}_happy".to_sym
#here you could define your instance methot using define_method
define_method "make_#{c}_happy" do
#your code
end
end
include InstanceMethods
end
module InstanceMethods
#here you could define other your instancemethod
end
end
ActiveRecord::Base.extend HappyColumns
убедитесь, что вы включили расширения в путь загрузки, тогда вы можете использовать happy_cols в вашей модели.
извините, если есть какая-то ошибка, для define_method посмотрите на это .
надеюсь, что это может помочь.