『Ruby on Rails 5 アプリケーションプログラミング』でRails学習 その5(モデルのつづき)
みなさん、体重定期的に測ってますか?
私は測ってません!!(どや)
でも自分の体型にはわりと敏感な気がします。
お風呂上がりに鏡で肩周りの肉付きを見たり、
洋服を着た時に着心地がほんの少しだけ違ったり、
ほんの些細な違和感程度で「ん?」と思えるので調整可能です。
まあ、それでも食べ続けてると、不可能です(当たり前)。
体重は、年1回の健康診断と、
本当にやばい気がするときだけタニタの体重計で測ってます。
ちなみに今、この違和感を感じてます。
毎日ケーキ食べてたからでしょうか。間違いないですね。
さて、では本題に入りましょう。
前回モデルの途中で終わったので、その続きからです!
前回の記事はコチラ↓↓
このシリーズを初めから読みたい方はこちら↓↓
前回の記事では、
「書籍情報を表示するサンプル」を作るのがゴール。
でもbooksテーブルのテストデータが2件しか入ってなくて「キーーーッ!!」
ってとこまでお伝えしました。(何か違う)
2.4.7 データ取得の基本(P53~)
ほうほう。書籍によると、これが終わった際には
booksテーブルに格納されているデータがキレイに
画面に表示できるにようになるみたいですね!
早速やってみましょう。
①listアクションを追加
「railsbook\app\controllers\hello_controller.rb」を開きます。
こんな感じで編集します。
Bookクラスのallメソッドを呼び出すことで、
booksテーブルの情報すべてを引っ張り出すイメージですね。
②テンプレートファイルを作成する
hello#listに対応する「list.html.erb」を作成します。
場所は「railsbook\app\views\hello」の下です。
eachメソッドでbooksテーブルのすべてのレコードを
順番に取り出していく仕組みですね。
「.isbn」などで、それぞれの列の値を個別にとっています。
③ルート定義を追加する
最後にルート定義を「railbook\config\routes.rb」に追加してあげます。
以上の3ステップで出来上がりなはずです!
「http://localhost:3000/hello/list」にアクセスしてみまーす!
どん!!!
エラーーーー!!!!!
なんで?と思ったら、新規で作成したファイルのエンコードが
「SJIS」になっていました!
これを「UTF-8」に変えてみると、、
でーきたー(`・ω・´)
ただ、味気ない。
ISBNコードですらMyStringってどうなってんのサンプルコードちゃん。
てことで、ちょいといじってみました。
いじったのはここ。
「railbook\test\fixtures\books.yml」ファイル!
ここに今現在booksテーブルに入っているデータがあります。
こんな感じにちょちょっと、、
念のためSQLiteクライアントでも変更を確認、、
大丈夫そうですね!
(画像では1冊分しか変えてませんが、もう1冊も変えてみました)
では、再度アクセス!
じゃーーん!出来ました!!!
これにてモデルの基本は終了です。