###
# はじめに
みなさんこんにちは。塩尻オープンソースラボの小澤です。
前回まで、MVCアーキテクチャのMとCを見てきました。いよいよ今回は、MVCアーキテクチャのV、すなわちビュー(View)を取り上げます。ビューの役割を紹介しながら、ActionViewについて見ていきましょう。
# ビュー
ビューは、モデルクラスにアクセスし、HTMLを生成しながら動的なデータを表示する部分を担当します。つまり、見た目(UI)を制御している部分で、RailsではActionViewが担っています。
Railsアプリケーションにおいては、app/viewsディレクトリ以下に、1つのコントローラに対して1つのディレクトリが作成され、そのディレクトリ内にビューテンプレートファイルが配置されます。これらのビューテンプレートファイルは、コントローラ内にあるそれぞれのアクションに対応し、結果を出力するために使用されます。モデルやコントローラと同様に、ビューファイルにも命名規則があり、例えば、posts_controller.rbコントローラのindexアクションは、app/views/postsディレクトリのindex.html.erbを使用します。
scaffoldした時には、以下のようにビューファイルが生成されます。
“`
$ rails generate scaffold post
[…]
invoke scaffold_controller
create app/controllers/posts_controller.rb
invoke erb
create app/views/posts
create app/views/posts/index.html.erb
create app/views/posts/edit.html.erb
create app/views/posts/show.html.erb
create app/views/posts/new.html.erb
create app/views/posts/_form.html.erb
“`
ビューはテンプレート、パーシャル、レイアウトの3つの要素から成り立ちます。
## テンプレート
一般的にはERBテンプレートを使用することが多いでしょう。ERBテンプレートの内部では、<% %>タグや<%= %>タグの中にRubyコードを記述できます。それぞれ、タグの中に書かれたRubyコードを実行しますが、<% %>タグでは実行結果を出力せず、<%= %>タグでは実行結果を出力するといった違いがあります。よって、printやputsのような出力関数はERBでは使えないので注意しましょう。
この続きは以下をご覧ください
リンク
ERBでコメントを使う方法には以下があります。
御社のプレスリリース・イベント情報を登録するには、ZDNet Japan企業情報センターサービスへのお申し込みをいただく必要がございます。詳しくは以下のページをご覧ください。