0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

(備忘録)MVCモデルの概要 ※自己解釈

Last updated at Posted at 2021-02-14

記事を作成するにあたり

現在、私はアプリ作成を勉強中です。今回の記事は、MVCモデルの概要について、自分なりの概念を説明するとともに、あわせてアプリ作成をする上で気を付けるべき部分を共有すべく、記事を投稿します。

ルーティング

まさにルートを決めるということで、リクエストの内容から行先を決めます。特定のリクエストを受け取り、動作する処理を決めます。
 root to: "prototypes#index"

M - モデル

データベースとのアクセス制御を中心に行います。DBへのアソシエーションやバリデーションの設定を行うことから、DB関連のエラーが発生する場合モデルを最初に確認すべきでしょう。
  belongs_to :user
  validates :text, presence: true

V - ビュー

文字通り、エンドユーザーへのレスポンスを表示します。画面の表示についてはHTML等の知識が必要です。

C - コントローラー

ルーティングにて指定されたアクション(処理)を行います。実際にアプリ等を実装する場合、コントローラーの制御や処理の記載が非常に多く、エラー解決においてはコントローラーへの処理や記載方法に誤りがある場合が多いです。
def edit
    @prototype = Prototype.find
end

DB

各種データの保管先。特に注意すべきは各キー項目とテーブルとの関連性や、カラムのデータ保持の方法(null制約)等でしょうか。モデルを定義する際にあわせて意識することが多いです。

最後に

実際に機能や処理を実装する際、上記の役割を念頭におきながら手を動かすことで、より理解は深まります。またエラー発生時に上記のような役割が頭で理解できていると、原因特定の一助になるかと存じます。
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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?