前提・実現したいこと
railsで投稿機能の実装しております
その中で、投稿者の名前を表示させたくその際、
以下のエラーメッセージが発生しました
発生している問題・エラーメッセージ
NoMethodError in Teams#show Showing /Users/kamiyatakashi/projects/kusayakyu/app/views/teams/show.html.erb where line #48 raised: undefined method `name' for nil:NilClass
該当のソースコード
teams.show.html.erb <div class="item-explain-box"> <span><%= "メンバー詳細" %></span> </div> <table class="detail-table"> <tbody> <tr> <th class="detail-item">チーム代表者</th> <td class="detail-value"><%= @team.user.name %></td> </tr> </tbody> </table>
class TeamsController < ApplicationController before_action :search_team, only: [:list, :search] def new @team = Team.new end def create @team = Team.new(team_params) if @team.save redirect_to root_path else render :new end end def list @teams = Team.all end def search @results = @p.result end def show @team = Team.find(params[:id]) end def edit @team = Team.find(params[:id]) end def update team = Team.find(params[:id]) if team.update(team_params) redirect_to root_path else render :update end end private def search_team @p = Team.ransack(params[:q]) end def set_team_column @team_term_id = Team.select('term_id').distinct end def team_params params.require(:team).permit(:teamname, :prefecture_id, :year, :age_id, :frequency_id, :level_id, :offer_id, :achievement, :location, :teamimage) end end
試したこと
1userと紐づいてないと思い、
アソシエーションを確認しました
userモデル
has_many :teams
teamモデル
belongs_to :user
は記述されていました
補足情報(FW/ツールのバージョンなど)
mac OS Big Sur 11.2.1
ruby 2.6.5
Rails 6.0.3.4
解決策が分からず、回答いただけると幸甚です。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。