У меня есть модель пользователя, и мне нужно создать запрос, как этоRails ActiveRecord ошибка запроса неоднозначное имя столбца
SELECT DISTINCT u.id FROM users as u
LEFT JOIN lists_users as lu ON lu.user_id = u.id
WHERE u.id != 3
AND lu.list_id != 34
Стараюсь
scope :include_current_user, lambda { |user, list|
joins('LEFT JOIN lists_users AS lu ON lu.user_id = id')
.where('id != :user_id AND lu.list_id != :list_id', user_id: user.id, list_id: list.id)
}
но у меня есть ошибка
SQLite3::SQLException: ambiguous column name: id: SELECT "users".* FROM "users" LEFT JOIN lists_users AS lu ON lu.user_id = id WHERE (id != 2 AND lu.list_id != 34)
Как создать это с помощью запроса ActiveRecord?
Вам не нужно указывать 'users.id', чтобы избежать двусмысленности? –
Мне нужно ввести отдельный идентификатор пользователя в этом примере sql. Я исключаю идентификатор пользователя = 3 и исключаю lu.list_id для таблиц list_users, эта таблица имеет псевдоним lu –
Как активный созданный запрос записи, как в примере –