Рельсы, activerecord, получить текущую спецификацию подключения
Я пишу код, который будет переносить некоторые данные из одной базы данных в другую, переписывая некоторые данные в месте назначения. Он использует ActiveRecord, поскольку он уже связан с Rails-приложением с использованием AR.
Так как некоторые данные будут переписаны, я хотел бы предоставить запрос подтверждения, который сообщает пользователю фактический словарь/спецификацию соединения, используемый для подключения к целевой базе данных. вы знаете, адаптер, хост, имя пользователя, пароль, база данных, то, что вы указали в database.yml.
Я могу взять модель для материала, который я пишу, и попросить SomeModel.connection.... Но, похоже, API не существует, чтобы получить фактическую спецификацию соединения из живого объекта соединения.
Действительно? Я что-то упускаю? Любые другие идеи, даже недокументированные api?
Ответы
Ответ 1
Аналогично тому, как вы можете вызывать connection
на модели, вы можете сделать вызов connection
на ActiveRecord:: Base.
ActiveRecord::Base.connection_config
Посмотрите на документы для ActiveRecord:: Base, так как есть другие методы, которые позволяют вам получать/устанавливать атрибуты о соединении.
Ответ 2
Ответ: SomeModel.connection_config