rails, activerecord, получить текущую спецификацию соединения - PullRequest
26 голосов
/ 30 декабря 2011

Я пишу код, который переносит некоторые данные из одной базы данных в другую, перезаписывая некоторые данные в месте назначения.Он использует ActiveRecord, поскольку он уже связан с приложением Rails, использующим AR.

Поскольку некоторые данные будут перезаписаны, я хотел бы предоставить запрос на подтверждение, который сообщает пользователю фактический словарь / спецификацию соединения, используемые для соединения с базой данных назначения.Вы знаете, адаптер, хост, имя пользователя, пароль, база данных, вещи, которые вы перечислите в database.yml.

Я могу взять модель для того, что пишу, и попросить SomeModel.connection .... Но, похоже, нет вообще никакого API для получения реальной спецификации соединения из объекта живого соединения,

Правда?Я что-то пропустил?Любые другие идеи, даже недокументированные API?

Ответы [ 2 ]

68 голосов
/ 30 декабря 2011

Аналогично тому, как вы можете вызывать connection на модели, вы можете позвонить на connection на ActiveRecord :: Base.

ActiveRecord::Base.connection_config

Посмотрите на документы дляActiveRecord :: Base , так как есть другие методы, которые позволяют вам получить / установить атрибуты соединения.

9 голосов
/ 30 декабря 2011

Ответ: SomeModel.connection_config

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...