Ruby on Railsでアプリを作ってみよう④


ビュー

MVCの役割の一つでブラウザにレスポンスとして見た目を返す役割を持っています。

ブラウザに表示するのはHTMLで書かれた物ですが、Rubyの記述も使って表現したい物です。
しかしそのままHTMLの文法で書いてしまうと問題があるので特別な書き方をします。

ERB(Embedded Ruby)

テンプレートエンジンと呼ばれる仕組みを持った物で
HTMLの中にRubyを埋め込むことができます。
ERBファイルは

ファイル名.html.erb

とhtmlの拡張子に追加してerbを記入することで作れます。

中身の記述をする時に
<%= %>というタグでRubyのコードを挟むことで埋め込んで表示することができます。
埋め込んだコードをブラウザに表示する必要のない場合(条件式など)は<% %> のタグを使います。

コントローラーにインスタンス変数を定義することで
アクションに対応するビューファイルでその値を使うことができます。


#コントローラーのファイル
class PostsController < ApplicationController 
  def index
    @post = "こんにちは" #インスタンス変数@postを定義
  end
end

ビュー入るでアクションに定義したインスタンス変数を使ってみましょう。

#ビューファイル
<%= @post %>  #こんにちは と表示される
#ビューファイル
<% @post %>  #何も表示されない

以上です。