更改rails对象的列名称

时间:2009-07-02 18:31:04

标签: ruby-on-rails ruby activerecord

如果我想用不同的名称引用ActiveRecord对象的列,该怎么办?例如,我可能会打电话:

@posts = Posts.find(:all,:select =>“created_on”)

但是我没有提到@posts [“created_on”],而是将其称为@posts [“date”]。你会推荐什么?

谢谢!

2 个答案:

答案 0 :(得分:7)

:select => "created_on AS date"

或者定义方法

def date
  read_attribute(:created_on)
end

答案 1 :(得分:4)

您之前的问题已经回答了,但我们走了:

class Posts
  alias_method :date, :created_on
end

或只是

class Posts
  alias date created_on
end