В Rails каждый использует ActiveRecord для запросов к базе данных.Запрос ActiveRecord приводит к объекту ActiveRecord :: Relation.Поскольку мы можем выполнить ActiveRecord::Relation#select
и указать произвольное предложение SQL select, иногда записи, возвращаемые базой данных, содержат столбцы, которых нет в базе данных.
Если это отношение содержит более одной строки, можно получитьимена столбцов отношения с помощью the_relation.first.attributes
.Однако, когда никакие записи не были возвращены запросом, этот метод не возможен.
Вопрос
- Есть ли способ получить имена получаемых столбцов запроса, равные
ActiveRecord::Relation
если строки не были возвращены?
Мотивация
Например, когда вы создаете экземпляр Daru::DataFrame
или некоторые другие реляционные данные, вы хотите получить атрибутимена, даже если в результате нет записей.