Rails概要【ビュー】

webページの本格的な表示にはRuby言語だけでは限界

→HTMLなど書いてデザインする(RubyのERBという技術を使う)

 

appフォルダの中のviewsというフォルダがあり、その中にコントローラー名のビューテンプレートを保管するフォルダを作る。

前回のHelloControllerクラスに用意したindexアクションメソッドのテンプレートを作る。

テンプレートファイルは【アクション.hrml.erb】

※今回の場合は、index.html.erb

〔記述例〕

<h1 class="display-4">Index page</h1>
<p>this is sample page.</p>
通常のHTMLは<head><body>で構成されていくが、Railsのテンプレートにはページ全体のレイアウトを行う機能がある為、実際に画面表示される部分(body部分)の記述だけでOK。
※classにdisplay-4という値を設定しているが、bootstrapというフレームワークのため
 
スタイルシートも同時に作成
assetsフォルダ-nostylesheetsフォルダの中にhello.scssが作成されている(コントローラー作成時に自動作成済み)
RailsAppは名前からHelloというコントローラーではhello.scssというスタイルシートを自動で利用するので、個別にロードしたりしなくてもOK
 
※デザインセンスに自信がなくても大丈夫
Railsで利用するためにCDN(Content Delivery Network)のリンクを追加する(<link>タグで埋め込む)
※埋め込み先は(views)¥(layouts)¥(application.html.erb)
すでに記述があるが、<body>部分にタグを追加して、<body>タグを書き換える
<body class="container">
 
ここまでやったら、HelloControllerクラス(hello_controller.rb)と修正して、indexメソッドでテンプレートが利用できるようにする。
独自にレンダリング等の記述がなければ、該当のアクションに対応するテンプレートを読み込んでレンダリングし表示してくれる。