hidemium's blog

日々学んだことをアウトプットする。

テンプレートファイルの作成

Model - View - ControllerのうちViewに対応するテンプレートファイルを作成します。

アクションからテンプレートに値を渡すには、アクションメソッドの中でインスタンス変数に値を設定します。※インスタンス変数は文字通りインスタンスごとに違う値を保持できます。

hello_controller.rbを以下のように修正します。

class HelloController < ApplicationController
  def view
    @msg = 'Hello world!' #インスタンス変数
  end
end

テンプレートでは、呼び出し元のアクションで定義されたインスタンス変数を参照して値を取り出すことができます。

テンプレートファイルは、app/viewsディレクトリ配下に、コントローラ名/アクション名.html.erbという名前で作成します。

app/views/hello/view.html.erbを以下のように作成します。

<div id="main">
<%= @msg %>
</div>

アクションメソッドで設定したテンプレート変数(インスタンス変数)は、テンプレート側で@変数名で参照します。

サーバを起動し、端末からブラウザで「http://localhost:3000/hello/view」にアクセスし、「Hello world!」が表示できることを確認します。

$ rails server