2014-08-30 52 views
0

我有以下两个表:用户,项目如何从Activerecord中加入表的列外部进行选择?

  1. 用户有很多项目
  2. 项目属于用户

当我运行以下

Project.find_by_sql("SELECT projects.*, users.is_admin 
        FROM projects 
        JOIN users ON users.id = projects.user_id 
        WHERE projects.id = 1") 

产生的对象仅包含projects表中的字段,users.is_admin不包含在内。

注意:我知道includes,我不想使用includes,因为它是2查询而不是1;在这种特殊情况下,它对性能非常敏感。

注2:我知道支持的模型与数据库视图的,我只是想这样做,作为最后的手段,因为它是另一种移民

回答

0

解决!

原来这不是问题!

它没有显示,但如果你这样做project.is_admin该字段在那里。

对于未来的参考,你可以这样做:

project.attributes去看看!