2016-03-23 3 views
2

В приложении Rails 4 У меня есть следующие ассоциации:Rails 4 Inner Регистрация На этом же таблице

User has_many :bookings 
Booking belongs_to :client, class_name: "User" 

Я пытаюсь сделать JOIN через таблицу, чтобы захватить бронирование и КЛИЕНТ:

User.joins("INNER JOIN bookings on users.id = bookings.user_id").joins("INNER JOIN users on bookings.client_id = users.id") 

Который возвращает:

PG::DuplicateAlias: ERROR: table name "users" specified more than once 

есть ли решение для извлечения 2 ассоциации?

ответ

8

Попробуйте

User.joins("INNER JOIN bookings on users.id = bookings.user_id").joins("INNER JOIN users AS bookings_user on bookings.client_id = bookings_user.id") 

Обратите внимание на users AS bookings_user

+0

Это работает! Спасибо. –

 Смежные вопросы

  • Нет связанных вопросов^_^