2011-01-05 66 views
0

我正在構建安裝程序。 因此,我想以某種方式遷移數據庫。 我正在使用Thor在Rails 3中安裝我的安裝程序。托爾腳本ruby中的Rake任務

因此,像(命令行)

rake db:create 
rake db:migrate 

謝謝。

回答

2

rails generator 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 

這將等同於在命令行中運行「rake db:migrate」。請注意,在運行該命令時,將執行rails生成器中的所有公開定義的方法。

附加信息: rake方法由Rails :: Generators :: Actions模塊提供,可由Rails :: Generators :: Base類使用。有關更多信息,請參閱Official Documentation