のじしお@プログラミングがんばる

田舎でも車なくてもやっていける話とか、プログラミング学習の備忘録とか。いいタイトルが思いつかないんだ…;;まずは書いて、あとから随時手入れをば。

Template is missingから学ぶ エラー解決への思考ルート【Rails】

 

Railsで「HelloWord」出そうとして速攻エラー出した超初心者。

見たことのないエラーでも、こういう考え方をすれば解決へのルートは導きだせる。

 

という非常に大切なものを学べましたので忘れず書いておきます。

 

 

 

エラー内容 :Hello World出そうとして即エラー「Template is missing」

Railsアプリ立ち上げたあと、ルートを指定してコントローラとビューファイルを追加。

さっそく「HelloWord」を表示させよう!と思ったら見たことのないエラーが発生。

え?え?(;゚Д゚)

 

エラー画面

f:id:piyomaru-bunbun:20180414223036p:plain

 

 

ルートだって指定してるし、

f:id:piyomaru-bunbun:20180414222402p:plain

 

 コントローラーにルートで指定した通り、indexアクションも追加してるし

ビューファイルもちゃんとuserlistのディレクトリに作成してるのに…

何度もやってる手順なのになぜ…と数分考えこんでしまいました;

f:id:piyomaru-bunbun:20180414223418p:plain

 

エラー文の意味・解決するための思考ルート

 Template is missingとは

エラー文の Template is missing とは簡単に言うと、ビューファイルが見つからない

というエラーだそうです。

                         テンプレートの呼び出し

 

Railsではアクションが呼び出された場合、何らかの結果を一度だけ利用者へ返す必要があります。アクションメソッド内で直接利用者へ結果を出力することも可能ですが、通常はビューに該当するテンプレートを使って利用者へ返す結果を作成し出力します。

 

アクションからテンプレートを呼び出す - Ruby on Rails入門

 

★★思考ルート:考えられること・疑うところ【重要】

 

確かに作ってあるビューファイルが「見つからない」とされている

    ↓

(ということは今、ビューファイルの中身はエラーに関係してないこともわかる

    ↓

ルート => コント―ローラ => ビューの流れなので、コントローラがビューを探してるあたりのエラーのようだ

    ↓

ではビューファイルはどうやって作成したか?

    

当該ディレクトリ内に、手動で新規ファイルを作成した

    ↓

手動ということは…間違いを起こす可能性がある

    ↓

ビューファイル作った部分を見てみよう!

ただしファイルの中身ではないということは…?

 

    ・

    ・

    ・

 

あったー!ファイル名間違えてたーー!

 

htmi という見つけづらいスペルミスw

f:id:piyomaru-bunbun:20180414231425p:plain

 

 うむ!解決!

f:id:piyomaru-bunbun:20180414231733p:plain

 

まとめ

あるはずなのにファイルが見つからないとされているとき、こんなふうに推測していく、よくあるパターンのようです。

手動操作の箇所はアタリをつけるとこなんですねー

そういえば自分の仕事でも似てる部分があるなぁ。

 

大変勉強になりました。こういう思考ルートは自分の中にもっといっぱい蓄えていきたいなと思いました。

 

 

ここまで読んでくださり、ありがとうございました^^

広告を非表示にする