RailsのActiveRecordメソッド

ActiveRecordとはモデルがテーブル操作するとき使うメソッドです。

テーブルの情報を保存したり取得するために使います。

例えるならテレビとリモコンの関係です。リモコンによって番組の予約したり、録画していた番組を再生するみたいな感じです!

 

たくさんあるActiveRecordから代表な例を紹介します!

  • allメソッド

テーブルのすべてのテータを取得する

 

  • findメソッド

テーブルの一部のデータだけを取得する

  • newメソッド

テーブルのデータをを生成する

  • saveメソッド

デーブルのデータを保存する

RailsのActive Storageについて

Active Storageとは画像のアップロードや保存する場所の作成を簡単にしてくれるGem(=装備みたいなもの)です。

これによりアップロードした画像を加工してくれる仲間たちがいます!

その仲間たちを紹介していきます!

 

愉快な仲間たち

① ImageMagic 

画像の作成やサイズ変更などに特化している。

しかし難点がある。それはGemではなくソフトウェアの為、「Homebrew」という特別なお菓子で仲間にしないといけない。しかもRubyRailsで使うためには子分がいないといけない。その子分が②である。

 

② MiniMagick

ImageMagic親分を仲間に入れるサポートしてくれる。

 

③ ImageProcessing

MiniMagick子分の足りない部分(画像サイズの調整機能)を補ってくれるパートナーです。

 

この3人を仲間にすることでRailsでの画像のアップロードなどがにとても簡単になります!

テストコードはアプリの取扱説明書

テストコードを書く意義はアプリ挙動の明確化と変更の簡略化です。

テストコードを書くことにより、アプリ概要の理解と変更点の修正を簡単にする効果があります。アプリ開発は複数で開発します。その時にテストコードがなかったら一から読み解かないといけません。それを解決してくれるのがテストコードなんです!テストコードはアプリの取扱説明書なんです!

 

テストコードの代表的なパターン

・正常系

上手くいくときの想定

例 メールアドレスとパスワードの入力されていたらログインできる。

 

・異常系

上手くいかないとき想定

例 メールアドレスの入力がないときはログインできない

 

正常系はアプリ開発者が作った正解の道をユーザーが通ることを考える

 

異常系は開発者が作った正解の道をユーザーが通らなかった時を考える

 

まとめ

・テストコードはアプリ挙動の明確化と変更修正の簡略化の為にある。

・テストコードのパターンとして正常系と異常系がある。

 

ActiveHashについて

ActiveHashとはデータベースのお助けマンである

本来、データを保存してくれるのはデータベースなんですけど、ActiveHashを使ってモデルにデータを保存することができます。

なぜ分ける必要があるのかというとデータベースの負担を減らす為です。

データベースにアクセスすると時間がかかったり、容量がパンパンになってしまいます。それを解消するためにActiveHashを使います。

では、どのようなデータがActiveHashに最適なのか

それはさほど重要じゃない情報と変わることがあまりない情報です。

例えば、都道府県や服のサイズなどあらかじめ決まっている情報やさほど重要じゃない情報をActiveHashを使用するケースが多いです。

ですので、ActiveHashを利用して、データベースの負担を減らしてあげましょう!