Задание Rake в сценарии Thor ruby - PullRequest
0 голосов
/ 05 января 2011

Я нахожусь в процессе сборки установщика.И с этим, я хочу как-то перенести базу данных.Я делаю свой установщик в Rails 3, используя Thor.

Так что-то вроде (в командной строке)

rake db:create
rake db:migrate

Спасибо.

1 Ответ

2 голосов
/ 08 марта 2011

API рельсового генератора фактически обеспечивает метод граблей и очень прост в использовании. Так, например, ваш файл генератора может выглядеть так:

class RakeTestGenerator < Rails::Generators::Base
  source_root File.expand_path('../templates', __FILE__)

  def rake_db
    rake("db:migrate")
  end
end

Затем вы можете выполнить это в приложении rails, запустив следующее.

rails g rake_test

Что будет эквивалентно запуску "rake db: migrate" в командной строке. Обратите внимание, что все общедоступные методы в генераторе рельсов выполняются при запуске команды.

Дополнительная информация: Метод rake предоставляется модулем Rails :: Generators :: Actions и доступен классом Rails :: Generators :: Base. См. Официальная документация для получения дополнительной информации.

...