ruby-on-rails - Rails Join - 如何获取同名字段

标签 ruby-on-rails ruby-on-rails-3 join outer-join

我有两个同名的表,正在执行连接

Visits::Appointment
    name:string
    id:integer
    ...


Places::Seatables
    name:string
    appointment_id:integer
    id:integer
    ....

我想做一个外连接并获取所有字段。当我执行以下操作时,我只从可座位的 table 上获得名称和 ID。
  Visits::Appointment.joins("LEFT OUTER JOIN places_seatables ON  places_seatables.appointment_id=visits_appointments.id").where('checkout is null and "isActive" is true and noshow is false').select(visits_appointments.*,places_seatables.*')

我怎样才能得到两个字段而不是一个

最佳答案

appointments = Visits::Appointment
               .joins("LEFT OUTER JOIN places_seatables ON  places_seatables.appointment_id=visits_appointments.id")
               .where('checkout is null and "isActive" is true and noshow is false')
               .select(visits_appointments.*,places_seatables.name as seatable_name, places_seatables.id as seatable_id')

现在你可以访问它们
appointment = appointments.first
appointment.seatable_name
appointment.seatable_id

关于ruby-on-rails - Rails Join - 如何获取同名字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22671966/

相关文章:

ruby-on-rails - Rails 中的多个嵌套包含

ruby-on-rails - Rails 5 - 集成测试 NoMethodError: #<Rack::Test::CookieJar:0x00000006796390> 的未定义方法 `signed'

css - 在 Ruby on Rails 中将图像加载到 View 中时出错

ruby-on-rails - 如何在 Rails 的 date_select 中同时使用空白日期和默认日期?

c# - Entity Framework - 如何在辅助表中的非主键列上连接表?

sql - 在没有匹配的 JOINed 记录时指定默认值

ruby-on-rails - 如何动态地向 ROAR 代表添加属性?

ruby - Rails 3 的 API 错误自定义,例如 Github api v3

mysql - 在我的 MySQL 中,使用 JOIN 一词或使用 : table1. id=table2.id 之间有什么区别

ruby-on-rails - 保存 Rails 中可拖动 div 的位置