前提・実現したいこと
Railsチュートリアル第5章にて、レイアウトを作成でエラーが発生しました。
このようなカスタムCSSを使っていないHomeページを作成したいのですが、
ターミナルのコマンドでrails sを実行し、ブラウザで確認したところ、
NoMethodError in StaticPages#home
というエラーが出てきて、解決の方法が分からずにおります。
発生している問題・エラーメッセージ
NoMethodError in StaticPages#home Showing /home/ubuntu/environment/sample_app/app/views/layouts/application.html.erb where line #4 raised: undefined method `full_title' for #<#<Class:0x00007f1ffdbb86f8>:0x00007f1ffdbc0d58>
該当のソースコード
Webサイトのレイアウト
app/views/layouts/application.html.erb
<!DOCTYPE html> <html> <head> <title><%= full_title(yield(:title)) %></title> <%= csrf_meta_tags %> <%= csp_meta_tag %> <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %> <%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %> <!--[if lt IE 9]> <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/r29/html5.min.js"> </script> <![endif]--> </head> <body> <header class="navbar navbar-fixed-top navbar-inverse"> <div class="container"> <%= link_to "sample app", '#', id: "logo" %> <nav> <ul class="nav navbar-nav navbar-right"> <li><%= link_to "Home", '#' %></li> <li><%= link_to "Help", '#' %></li> <li><%= link_to "Log in", '#' %></li> </ul> </nav> </div> </header> <div class="container"> <%= yield %> </div> </body> </html>
試したこと
タイプミスの可能性を疑い、チュートリアルのテキスをコピペして再度rails sを試してみましたが、結果は変わらず。
コントローラとルーティングも見直してみましたが、特に間違っているようには見えまえん。
/sample_app/app/controllers/static_pages_controller.rb
class StaticPagesController < ApplicationController def home end def help end def about end end
/sample_app/config/routes.rb
Rails.application.routes.draw do root 'static_pages#home' get 'static_pages/home' get 'static_pages/help' get 'static_pages/about' end
###利用環境
Rails6.0
Cloud9
どなたかご回答お待ちしてます
このようなエラーに遭った場合、どう対処すべきなのでしょうか?
ご教授いただければ、大変嬉しく思います。
経験不足なため、エラー解決のために必要な情報が足りていないかもしれません。。。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/04/17 12:59