Ruby / Rails

Railsコンソールとはなんぞや・・・!?

2019年7月3日

出典:魁!!男塾

こんにちは、Nanayakuです。

今回は、Railsコンソールについて解説していきます。

目次

Railsコンソールとは

railsコンソールとは、railsのサーバーを起動せずにrubyのコードを実行できるツールです。

railsアプリケーションを構築して行く中で、メソッドの動きを確認したい場合など、

「サーバーを起動」→「サーバー停止」→「変更」→「サーバー起動」・・・・

と毎回やっていたら、時間がかかり大変です。

railsコンソールは、railsアプリケーション内で定義したメソッドなどを実行することが出来ます。

これにより、書いたコードや色々なメソッドの動きを確認しながら、プログラムを構築していくことが出来ます。

また、デバッグでも役に立ちます。

エラーやバグの場所がわからない時、コードを1つ1つ確認していくことで、原因を突き止めやすくなります。

 

使い方

今回は、Railsのモデル・migrationについてで作成したモデルの動作確認をします。

起動

railsプログラムのディレクトリに移動し、

rails console

または

rails c

で実行することが出来ます。

画像のように表示されれば、railsコンソールが起動されました。

[1] pry(main)>

は「プロトコル」と呼ばれ、ターミナルの「$」と同じで、ここに実行したいコマンドを入力します。

 

モデルの作成

モデルの作成には、newメソッドを使います。

引数が無いので、全てのカラムにnillが入ったオブジェクトが返ってきました。

newメソッドは引数をカラムに渡すことが出来ます。

画像のように、引数のnameとemailがカラムに渡されました。

 

データベースに保存

上記のnewメソッドで生成したモデルは、データベースに保存はされていません。

保存するためには、saveメソッドを実行しなければなりません。

画像は、newメソッドに続けて実行しています。

saveメソッドは、成功すると「true」を返し、失敗すると「false」を返します。

これは、成功したかどうか分岐する処理で用いられます。

 

モデルの生成・保存

createメソッドはモデルの生成と保存を同時に行います。

画像から、createメソッドの方のemailが保存されているのが分かります。

 

データの更新

updateメソッドは、データの更新を行います。

↓の画像は、今保存されているデータの一覧です。

↓の画像から、updateメソッドでデータが更新されているのが分かります。

 

データの削除

destroyメソッドで、データを削除することが出来ます。

画像は、id=2のデータを削除するコマンドです。

 

モデルの検索

findメソッド

findメソッドは、id(プライマリキー)で検索をします。

プライマリキーについて=>Railsのモデル・migrationについて

プライマリキーはテーブルの設定で違うので注意が必要です。

しかし、プログラミングの世界で「id」は重複しない値であるのが、暗黙の了解となっています。

画像はidが4のデータを検索したことが分かります。

 

find_byメソッド

find_byメソッドは、id(プライマリキー)以外で検索をします。

画像は「name」がTagutiのデータを検索しています。

 

allメソッド

allメソッドは、全てのレコードを取得します。

基本的に検索するメソッドと作成・更新・削除するメソッドを合わせて使います

例)

User.find(2).destroy(idが2のデータを削除)

 

終了の仕方

exit」で終了することが出来ます。

 

最後に

備忘録がわりに作ったので、間違っている所とかあったら、コメントくれると嬉しいです。

-Ruby / Rails
-

© 2024 Nanayaku blog Powered by AFFINGER5