LoginSignup
2
1

More than 3 years have passed since last update.

【Ruby on Rails】Rakeタスクを定義してみよう。

Last updated at Posted at 2020-09-26

Rakeタスクってなに

タスクってなに、、、「やること」っていう意味かな。はじめて聞いた時はそう考えましたが、調べてみるとRuby on Railsにはタスクというものが存在するらしい。

Rakeタスクとは

このタスクという機能は、いちいちアプリケーションを立ち上げるなくてもターミナルから任意の処理を実行することができるものらしい。自分が携わっているアプリケーションでは、開発段階でサンプルのデータが必要だったので、それをこのタスクというものを使って作成した。

タスクを作成してみる

rails g task sample

これでsample.rakeというタスクに関するファイルを作成する。
lib/tasksにsample.taskという名前のファイルを作成。

namespace :greet do
end

作成したファイルには、デフォルトで上のようなコードが書かれている。
この中を自分がタスクとして行いたい処理をコマンド一つで実行されるように書いていく。

# タスク名前を書く。
namespace :sample do
  # タスクの説明を書く。 desc => description(説明)
  desc ""
  # db => タスクの名前を書く。
  task db: :environment do
    # 実行したい処理を記述する場所
  end
end

上から、、、、
●名前を書く → namespace
●タスクの説明 →desc
●タスクの名前 → task db: 上の例だと db がそう。

namespace :sample do
  desc "ゴリラと表示するタスク"
  task gorira: :environment do
    puts "ゴリラ"
  end
end

作成したタスクがきちんと動作するか確認をしてみる。

rails sample:gorira

ゴリラ

これでrake タスクの完成。

2
1
0

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
2
1