LoginSignup
223
191

More than 3 years have passed since last update.

RailsでRakeタスクの作成

Last updated at Posted at 2016-07-03

会社で初めてrakeファイルを触って珍紛漢紛だったので...
すこし調べてみました!!

1.Rakeタスクファイルを生成

$ rails g task task_sample

task_sampleは任意で分かりやすい名前が良いと思います!

するとlib/tasks/task_sample.rakeが生成されるのでこのファイルに書いていきます!

task_sample.rake
namespace :task_sample do
end

2.タスクに処理を実装

ブロック内に処理を追加します

lib/tasks/task_sample.rake
namespace :task_sample do
  desc "実行処理の説明"
  task :sample do
    puts "Hello World"
  end
end

3.作ったRakeファイルを確認

command
$ rake -vT

#出力結果がズラ〜と並びます

...
rake task_sample:sample                    # 実行処理の説明
...

4.実行する

command
$ rake task_sample:sample
Hello World

5.DBに接続する場合

lib/tasks/task_sample.rake
#モデルにアクセスする場合は :environment を指定します

namespace :task_sample do
  desc "task_sample_use_model"
  task :task_model => :environment do
    puts User.first().to_yaml  #Userモデルを参照する!
  end
end

実行すると

command
$ rake task_sample:task_model
--- !ruby/object:User
attributes:
  id: 1
  name: 鈴木
  age: 21
  day: 2001-01-01
  created_at: 2014-01-12 07:09:56.000000000 Z
  updated_at: 2014-01-12 07:09:56.000000000 Z

定期的なメンテナンスなどする際はrakeが便利そうなので使ってみたいと思います

223
191
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
223
191