前提・実現したいこと
ruby on railsでログイン機能のログインしているとこんにちは、〇〇さん。と表示させたいのですが、index.erbで<% if user_signed_in? %>のところでエラーが出てしまいます。
発生している問題・エラーメッセージ
ArgumentError in Prototypes#index
該当のソースコード
index.erb
index.erb
1<main class="main"> 2 <div class="inner"> 3 <% if user_signed_in? %> 4 <div class="greeting"> 5 <%= link_to "こんにちは、#{current_user_name}さん", user_session_path, class: :greeting__link %> 6 </div> 7 <% else %> 8 <div class="card__wrapper"> 9 <% end %> 10 </div> 11 </div> 12</main>
コントローラー
prototypes.controller.rb
1class PrototypesController < ApplicationController 2 before_action :move_to_index, except: [:index, :destroy] 3 4 def index 5 @prototypes = Prototype.includes(:user) 6 end 7 8 9 def destroy 10 end 11 12 private 13 def move_to_index 14 unless user_signed_in? 15 redirect_to action: :index 16 end 17 end 18end
試したこと
コントローラーの記述が悪いのかと思い、みてみたのですが、初心者なものでわかりません。知恵を貸してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
ArgumentErrorは引数エラーです。
@prototypes = Prototype.includes(:user)
これのincludesの引数の数とかはあっていますか?
あなたの回答
tips
プレビュー