如何在Activerecord中使用连接从表的列外部进行选择?

时间:2014-08-30 01:21:14

标签: activerecord

我有以下两个表:user,project

  1. 用户有很多项目
  2. 项目属于用户
  3. 当我运行以下

    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:我知道用数据库视图支持模型,我只想做到最后,因为它是另一个迁移

1 个答案:

答案 0 :(得分:0)

解决!

原来这不是问题!

没有显示,但如果你project.is_admin,那么该字段就在那里。

对于将来的参考,您可以这样做:

project.attributes看!