LoginSignup
0
0

基礎知識④Active Recordについて

Posted at

はじめに

転職活動をする中で、MVCそれぞれの役割やhttp通信についてなど、基礎的な技術知識について問われるシーンがあったので、改めて基本に立ち返って自己学習しようと思った。

出題例にActive Recordについての質問があり、
そういえばちゃんと説明できないな〜…と思ったので学習内容をまとめる。

Active Recordとは

Ruby on Railsで使用されるデザインパターンの一つで、DBとのやり取りを簡素化してくれるもの。
本来DBとやり取りをするためにはDB言語であるSQLが使われますが、
RailsにはこのActive Recordが適用されているため、
複雑なSQL文を書かなくてもRubyで直感的にDBとのやり取りを記述することができる。

Active Recordで出来る主なこと

  • CRUD機能のサポート
    Create Read Update Deleteといった基本的なデータ処理機能を
    メソッドを用いて簡単に行うことができる。

  • モデル同士のアソシエーション
    異なるモデル間を結ぶことができます。
    ex)1ユーザーが複数のコメントを投稿できるように、UserモデルとCommentモデルを関連づける。

  • バリデーションの作成
    データが正しくデータベースに保存されるための制約をつけることができる。
    ex1)コメントには必ず本文が記入されていないといけない
    ex2)本文は50文字以内でなければいけない

  • クエリインターフェイス
    データベースから意図したデータを取得するための方法。
    ex1)登録されているユーザーデータを全件取得
    @users = User.all
    ex2)ユーザーのデータベースから名前が「太郎」さんのデータのみを取得
    @user = User.find_by(:name "太郎")

など

普段なんとなくコントローラにモデル.allとかモデル.find(params[:id])とか書いてましたが、
Active RecordのおかげでDBとのやり取りが簡単に行うことができていたんですね🥸

参考にさせていただいた記事

0
0
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
0
0