【问题标题】:How to make join of three tables in Rails 3.2如何在 Rails 3.2 中连接三个表
【发布时间】:2012-08-27 15:18:40
【问题描述】:

我有三个表如下

  • 用户(用户名地址)

  • 个人资料(fname,lname,mobile)

  • 详细信息(性能、活动)

我想所有信息来自上述三个表在一个查询中

即我想为一个公共 id 字段加入三个表

我有以下查询,它只检索两个表字段

 @details=User.find(:all,:joins => :profile,:select => "*")

如何为所有三个表执行此操作???

【问题讨论】:

    标签: ruby-on-rails-3 activerecord join


    【解决方案1】:

    此查询的外观如下:

    @details = User.select('*').joins(:profile, :details).all
    

    我不相信这实际上是做任何事情的好方法,但它应该有效。

    【讨论】:

    • 谢谢,这正是我想要的
    【解决方案2】:

    这对我有用:

    value_variable = 'hello world'
    Member.joins(:person => [:workplace => [:business]]).where("businesses.name LIKE :value", value: "%#{value_variable}%")
    

    注意:在 rails 3.2、4.x、5.x 上测试

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-01-08
      • 1970-01-01
      • 2014-01-01
      • 2012-05-20
      • 2016-06-19
      • 2016-11-19
      • 2016-12-07
      相关资源
      最近更新 更多