Ruby on Railsの実践的なView

はじめに

今回はRailsのViewについてアウトプットしていこうと思います!

Viewの構造

Ruby on Railsのおけるビューには、コントローラーの実装後に実行される「HTMLなどのレスポンスをブラウザに表示する」という機能があります!

この機能を実装できるのは、Action Viewという仕組みをRailsが搭載しているからです!

Action View

Action Viewとは、Railsのアプリケーションにおいて、ビューの機能を実現するために必要な処理のオブジェクトのことです!

ビューファイルを1つにまとめてブラウザに表示するのは、これによって実現しています!

ControllerとViewの関連性

ディレクトリにコントローラー名と同じディレクトリを作成し、その配下にビューファイルを設置することによって、コントローラーとビューファイルを関連づけることができ、その関連づけされたビューファイルとレイアウトや部分テンプレートが組み合わさってブラウザへ表示される仕組みです!

ここで注意したいことは、ビューファイルがそのままブラウザに返却されるわけではなく、ビューファイルの内容がAction Viewによってまとめられ、ブラウザに返却されるということです!

また、コントローラー内で定義したインスタンス変数は、ビューファイル内で使用できますが、すぐに、ビューファイス内で使用できるわけではなく、コントローラーで取得したインスタンス変数は、Ruby on Railsの裏側で定義されるメソッドを経て読み変えられます!

そこから、Action Viewへ渡され、再度ビューファイルのインスタンス変数としてセットされ、初めて使用できる仕組みです!

簡単にいうと、仕組み自体はソースコードを読み込むことで理解できるということです!

ヘルパーメソッドの仕組み

ビューファイルでは、ヘルパーメソッドを使用することができます!

これで使えるヘルパーメソッドには、form_withやlink_toなどがあります!

ヘルパーメソッドは、文字列としてHTMLの要素が戻り値となっています!

ヘルパーメソッドは作成することができます!

そのために必要なこととしてモジュールという言葉があります!

モジュール

モジュールとは、Rubyにおける「インスタンスを生成できないクラス」のようなもののことです!

module モジュール名

end

また、モジュールの中ではクラスを定義することもできます!

クラスとモジュールの使い分けとして、具体的なオブジェクトを生成したい場合はクラスを使用し、処理だけが必要な場合はモジュールを使用します!

Helper

Helperとは、ヘルパーメソッドを作成できるモジュールです!

各コントローラーに対応したhelperのファイルに処理を記述することでヘルパーメソッドとして使用できます!

実際には〇〇Helperという形で定義されています!

module ApplicationHelper
   def sample
     #sampleというヘルパーメソッドです
   end
end

このような感じにHelper内へメソッドとして定義すると、下記のようにビューファイルで使用できます!

星野涼太
ルアー釣りを本格的に初めて4年目です!世界各国の魚を釣ることを目標に釣りをしています!その時得られた情報をこのブログできょう共有しています!
ryota hoshinoをフォローする
未分類
スポンサーリンク
ryota hoshinoをフォローする
hoshino9796
ryota hoshinoをフォローする
駆け出しSEの釣り日記

コメント

タイトルとURLをコピーしました