コントローラー
ビュー
前回
これから
コントローラー
(命令役)
ビュー
(HTML担当)
モデル
(データ担当)
サイトを使う人
「このページを開いて」みたいな要求を送る
モデル!必要なデータを頼む!
ビュー!表示するためのHTMLを頼む!
コントローラー
サイトを使う人
リクエスト(なんかの要求)
※ただサイトを開くのも1つの要求
レスポンス(結果をかえす)
※サイトを開く要求であれば、HTMLを返す
<% abc = 100 %>
<h1>railsテスト</h1>
<% while abc >= 0 %>
<p>これは<%= abc %>点のテストです</p>
<% abc = abc - 1%>
<% end %>
erb
erb
<h1>railsテスト</h1>
<% while abc >= 0 %>
<p>これは<%= abc %>点のテストです</p>
<% abc = abc - 1%>
<% end %>
class TestsController < ApplicationController
】は、Rubyでのクラスの定義(クラス)です。
end
】です。この間が1つのクラスということです。class TestsController
】の右側【 < ApplicationController
】(アプリケーションコントローラー)は、クラスの継承(けいしょう)というものです。
ApplicationController
】クラスとは同じ controllersフォルダの中にある application_controller.rb(アプリケーション_コントローラー.ルビィ)のことです。下の画像のファイルですね。class TestsController
】の右側【 < ApplicationController
】(アプリケーションコントローラー)は、クラスの継承(けいしょう)というものです。
ApplicationController
】クラスとは同じ controllersフォルダの中にある application_controller.rb(アプリケーション_コントローラー.ルビィ)のことです。下の画像のファイルですね。継承
def index
】と書くことで、indexメソッドが作られます。(すぐ下のendまでが、1つのメソッドです)
testsのコントローラー
技:indexメソッド
ビュー
(HTML担当)
モデル
(今回出番なし)
サイトを使う人
~tests/index のページをポチっ!と
①indexメソッド実行!!
③はいどうぞ!
④お待たせしました!
②testsフォルダのindex.html.erbをくれ!!
tests_controller.rb
index.html.erb
tests_controller.rb
index.html.erb
←クリック
画面が変わる
追加、編集、削除が出来るサイト
①
②
③
④
⑤
⑥
indexファイル
(一覧:いちらん)
showファイル
(詳しく見せる)
本の一覧が並んでいるファイル
本の詳しい内容が見れるファイル
controller
(コントローラー)
show_1ファイル
(book1のデータ)
showファイル
(modelから渡されたデータ)
show_2ファイル
(book2のデータ)
show_3ファイル
(book3のデータ)
model
(モデル)
controller
(コントローラー)
ファイルをどんどん増やさないといけないため、良くない方法
ファイルは1つで、内容(データ)だけを切り替えて表示する方法