2011-05-16 61 views
3

我有一个连接到遗留数据库的rails应用程序。别名或为rails应用中的遗留数据选择AS

当我查询数据库时,它会返回类似'userID'的内容,而不是'id'和'userName'而不是'name'。

我认为这将是足够简单,只是在我的控制器

 
:select=>'userID AS id, userName AS name' 

写的,但是当我这样做,我试图领域的重命名没有得到恢复。我没有别名的其他字段正在返回。

有没有更好的方法来做到这一点?也许别名模型中的字段名称?

回答

4

你为什么不模型中的

class User < ActiveRecord::Base 
    set_primary_key "userID" 
    #Use alias_attribute to define your columns to ActiveRecord standards. 
    alias_attribute "name", "userName" 
end 

定义的更改或者你可以使用recomended路线,并为服务器上数据库的视图。请参阅:http://www.slideshare.net/napcs/rails-and-legacy-databases-railsconf-2009