Подтвердить что ты не робот

Как использовать ActiveRecord вне Rails?

Я создаю приложение Rails на основе гексагональной архитектуры.

Один из моих адаптеров - это адаптер хранения (поддерживается как драгоценный камень), который управляет доступом к базе данных и предоставляет простой интерфейс для приложения rails для хранения и запроса данных в базе данных.

Я хотел бы использовать ActiveRecord в этом камне со всеми задачами rake (создавать, переносить, удалять, откатывать) для управления базой данных.

Как я могу использовать AR внешние рельсы, но со всеми задачами rake?

4b9b3361

Ответ 1

Установите его, как и любой другой камень

gem install activerecord

Затем вы сконфигурируете его где-то вроде этого

ActiveRecord::Base.establish_connection(
  :adapter  => 'mysql',
  :database => 'database',
  :username => 'user',
  :password => 'password',
  :host     => 'localhost')

Модели могут затем наследовать, как обычно, от ActiveRecord:: Base

Вы получаете все задачи рейка, но вам нужно выполнить дополнительную настройку, так как у вас не будет Rails. Вот ссылка внутри activerecord на то, как настроить этот материал.

Задачи базы данных

Ответ 2

Обновленное решение - standalone_migrations. В основном после выполнения настройки для драгоценного камня и создания конфигурации у вас есть доступ ко всем настройкам ActiveRecord. Включены задачи рейка!

Кроме того, я создал небольшой генератор для простых простейших скриптов, которые имеют доступ к ActiveRecord из коробки: nrb - Ninja Ruby.