Есть ли способ получить фактическое имя столбца с помощью ActiveRecord?
Когда я вызываю find_by_sql или select_all с соединением, если есть столбцы с тем же именем, первый получает переопределение:
select locations.*, s3_images.* from locations left join s3_images on s3_images.imageable_id = locations.id and s3_images.imageable_type = 'Location' limit 1
В приведенном выше примере я получаю следующее:
#<Location id: 22, name: ...
>
Где id - идентификатор последнего s3_image. select_rows - единственное, что работало, как ожидалось:
Model.connection.select_rows("SELECT id,name FROM users") => [["1","amy"],["2","bob"],["3","cam"]]
Мне нужно получить имена полей для строк выше. Это сообщение приближается к тому, что я хочу, но выглядит устаревшим (fetch_fields больше не существует Как вы получаете строки и столбцы в результате запроса с помощью ActiveRecord?)
Метод объединения ActiveRecord создает несколько объектов. Я пытаюсь достичь того же результата, "включая", вернется, но с левым соединением.
Я пытаюсь вернуть много результатов (а иногда и целых таблиц), поэтому включение не подходит моим потребностям.