5
3

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 5 years have passed since last update.

Ruby on Railsのしくみ

Last updated at Posted at 2019-01-21

入門段階で学んだこと

要素の繋がりが頭の中でごちゃごちゃしていたので、以下の順番でまとめてみます:point_down:
  1. 各要素の役割
  2. Railsが動く流れ

1. 各要素の役割

全体の流れを見る前に、まずは各要素が何をする場所なのかを把握します。

ルーティング

URLのリクエストが来た時に、どのコントローラーのどのメソッドに繋がるかを示すところ
リクエストの行き先を案内します。

get (または post) URL => コントローラー#メソッド

getはデータベースを参照する場合、
postはデータベースに変更を加える場合(例えば登録、削除など)という違いがあります。

コントローラー

リクエストに対応する処理(メソッド)を定義するところ
アクションを行います。

@変数名のように@をつけてインスタンス変数を定義し用いることで、ビューでも同じ変数を使ってコードを書くことができるようになります。

モデル

データベース内のデータに処理を行うところ
例えば、保存されるデータが条件に合っているかの判断などを行います。

ビュー

コントローラーで行われた処理をHTMLで可視化するところ
ユーザに表示される画面になります。

コントローラーのメソッド1つに対して、1つのビューが作られます。
コントローラーで定義された@変数名は、ビューでもそのまま使用可能です。

2. Railsが動く流れ

それぞれの役割がわかったところで、どのような流れで処理が行われるかを図で見ます。
ユーザから送信されたリクエストは以下のように動いていきます。

名称未設定2.jpg
  1. ルーティングで示された道案内に従い
  2. コントローラーでアクションを起こし
  3. モデルの条件に従って
  4. データベースに情報を保存・削除・編集等し
  5. ビューでユーザに見せる画面を作成

まとめ

どことどこが繋がっているかが見えると、全体的な構図を理解してコードを書けると思います。
勉強中なので説明が不足している点もあると思いますが、ひとまず上記の役割と流れを把握してRailsの勉強を続けたいと思います:computer:

5
3
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
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?