0

インストーラーを作成中です。それで、どういうわけかデータベースを移行したいと思います。私はThorを使用してRails3でインストーラーを作成しています。

したがって、(コマンドラインで)のようなもの

rake db:create
rake db:migrate

ありがとうございました。

4

1 に答える 1

2

RailsジェネレータAPIは、実際にはrakeメソッドを提供し、非常に使いやすいです。たとえば、ジェネレータファイルは次のようになります。

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

これは、コマンドラインで「rakedb:migrate」を実行するのと同じです。Railsジェネレーターで公開されているすべてのメソッドは、コマンドの実行時に実行されることに注意してください。

追加情報: rakeメソッドはRails :: Generators :: Actionsモジュールによって提供され、Rails :: Generators::Baseクラスによって利用可能です。詳細については、公式ドキュメントを参照してください。

于 2011-03-08T17:59:51.807 に答える