0

我有一个与旧数据库对话的 Rails 应用程序,其中所有列都是大写的,例如NAME, TYPE, CREATED_AT。将这些列重命名为小写不是一种选择。

我知道可以 alias_attribute, :new_name, :old_name 用来创建别名。

但是,有没有办法遍历所有列并将属性别名为小写?类似于以下内容:

    class Apple < ActiveRecord::Base
      Apple.attribtues.each do |att|
        alias_attribute :att.down_case, :att
      end
    end
4

1 回答 1

1

attributes是一个实例方法,但column_names它是一个应该适合您的目的的类方法。

class Apple < ActiveRecord::Base
    Apple.column_names.each do |att|
      alias_attribute :att.downcase, :att
    end
  end
end
于 2013-08-06T00:51:02.277 回答