【Ruby on Rails】データベースに接続するRakeタスクの実装について解説します

Ruby on Rails

こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、11年目エンジニアです。

この記事では、 Ruby on Railsでデータベースに接続するRakeタスクの実装について丁寧に解説します。
Rakeタスクを新規作成するコマンドやRakeタスクの基本の実装や実行方法については、以下の記事をご参考ください。

前提条件:実行環境について

実行環境は以下の通りです。

OS Windows10
Rubyのバージョン 2.6.6
Ruby on Railsのバージョン 6.0.3.5
SQLiteのバージョン 3.32.3

この記事ではRuby on Railsのプロジェクトは

C:\rails_study\sample

に作成しています。

データベースに接続するRakeタスクの実装について解説

データベースに接続するRakeタスクの実装について解説します。

Rakeタスクは基本

というように実装していました。
データベースに接続したい場合は

上記のサンプルのように、タスク名を宣言する箇所に【:environment】を挿入するだけでOKです。
データベース接続しない場合でも、【:environment】を挿入していて問題ありません。

タスク名の【:environment】

と書いても同じようにデータベースに接続することができます。

では、次の章で実際に使ってみます。

データベースに接続するサンプルRakeタスクの概要

データベースに接続するサンプルRakeタスクは、usersテーブルからデータをすべて取得し表示する、というタスクを実装します。
usersテーブルには以下のデータがあります。

Rakeタスクサンプル

each_with_indexメソッドは、要素番号を扱うことができる繰り返し処理です。
詳しくはこちらの記事をご参考ください。

実行結果

Rakeタスクを実行してテーブルのデータを読み込めているかを確認します。

usersテーブルのデータが読み込めていることが確認できました。

まとめ:データベースに接続するRakeタスクにはenvironmentを使おう

以上がRuby on Railsでデータベースに接続するRakeタスクの実装の解説でした!

あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ

コメント

タイトルとURLをコピーしました