こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、11年目エンジニアです。
この記事では、 Ruby on RailsでRakeタスクの実装について丁寧に解説します。
Rakeタスクを新規作成するコマンドは、以下の記事をご参考ください。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows10 |
---|---|
Rubyのバージョン | 2.6.6 |
Ruby on Railsのバージョン | 6.0.3.5 |
この記事ではRuby on Railsのプロジェクトは
C:\rails_study\sample
に作成しています。
Rakeタスクの実装について解説
Rakeタスクの実装について解説します。
Rakeタスクは、以下のように実装します。
1 2 3 4 5 6 |
namespace :sample_task do desc "Hello World" task :hello do puts "Hello World" end end |
上記サンプルのざっくりとした意味は下記になります。
上記の中で
- namespace
- desc
をピックアップして解説します。
namespaceとは
【namespace】とは、名前空間です。
名前空間を一言で言うとグループ化です。
【namespace】をうまく使って分けると、管理するのがとても楽になります。
ちなみに名前空間は入れ子にすることも可能です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
namespace :sample_task do namespace :child_task do desc "child" task :child do puts "child" end end desc "man" task :man do puts "man" end end |
descとは
【desc】とは、「description」のことで和訳すると説明です。
意味の通りここにRakeタスクの説明を記載します。
サンプルには英字で記載していますが、日本語もOKです。
作成したRakeタスクを確認する
この記事ではファイル名が【sample_task.rake】で、以下の内容のRakeタスクを作成したとして進めます。
1 2 3 4 5 6 |
namespace :sample_task do desc "Hello World" task :hello do puts "Hello World" end end |
Rakeタスクの作成が完了したら、正しく定義できているかを確認します。
確認する方法は、railsコマンドを一覧で表示させれば確認できます。
railsコマンドは
1 |
rails -T |
です。
詳しくは、こちらの記事をご参考ください。
コマンドをたたいて表示された一覧のなかに
1 |
rails sample_task:hello # Hello World |
と表示されているので、正しく定義できていることを確認できました。
作成したRakeタスクを実行する
作成したRakeタスクを実行します。
実行するためのコマンドは
1 |
rails -T |
で表示されていたコマンドです。
この記事だと
1 |
rails sample_task:hello |
をたたくと
1 2 |
C:\rails_study\sample>rails sample_task:hello Hello World |
と表示されたので、正しく動くことが確認できました。
まとめ:Ruby on RailsでRakeタスクの実装してみよう
以上がRuby on RailsでRakeタスクの基本の実装の解説でした!
Rakeタスクで他にできることも知りたい、という方はこちらの記事もご参考ください。
【Ruby on Rails】データベースに接続するRakeタスクの実装について解説します
Rakeタスクを中断するやり方
【Ruby on Rails】Rakeタスクを中断するやり方について解説します
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント