Я пытаюсь получить имена столбцов из нескольких таблиц, выполнив объединение для их объединения.Rails получает имена столбцов из всех таблиц после присоединения
Я пытался просто делать следующее:
User.joins(:user_account, :user_file, :user_education).column_names
, но это возвращает только имена столбцов из пользователя, как если бы я только что сделал следующее:
User.column_names
Кто-нибудь знает, как получить все имена столбцов из соединения? Похоже, что это не часто требуется, потому что, похоже, в Интернете нет много информации об этом. Мне нужно это для проверки параметров пользователя.
Спасибо!
EDIT:
имена столбцов в таблице User:
["id", "status", "accepted_terms", "created_at", "updated_at", "email", "encrypted_password", "reset_password_token", "reset_password_sent_at", "remember_created_at", "sign_in_count", "current_sign_in_at", "last_sign_in_at", "current_sign_in_ip", "last_sign_in_ip", "confirmation_token", "confirmed_at", "confirmation_sent_at", "unconfirmed_email", "provider", "uid"]
имена столбцов в USER_ACCOUNT таблице:
["first_name", "last_name", "phone_number", "address"]
Я хочу, чтобы иметь возможность получить весь список имен столбцов, т.е.
["id", "status", "accepted_terms", "created_at", "updated_at", "email", "encrypted_password", "reset_password_token", "reset_password_sent_at", "remember_created_at", "sign_in_count", "current_sign_in_at", "last_sign_in_at", "current_sign_in_ip", "last_sign_in_ip", "confirmation_token", "confirmed_at", "confirmation_sent_at", "unconfirmed_email", "provider", "uid", "first_name", "last_name", "phone_number", "address"]
Какой метод нужен для получения именно этого списка? Я попытался
User.joins(:user_account).column_names
, но это только дает мне первый набор имен столбцов, то есть те, в только таблице пользователей (не те, в таблице учетной записи пользователя).
Вы можете разместить сообщение об ошибке, что вы испытываете – MZaragoza
является то, что вы получаете нам колонки, которые принадлежат к пользователю? – MZaragoza
есть, точно. (Я добавил дополнительную информацию, если это поможет). – chris