解決したいこと
Ruby on Railsで投稿型のアプリを作っています
アーティストページで、関係する全てのジャンル名を表示したいのですが、中間テーブルを通してうまくデータを引っ張る事ができません。解決方法を教えてほしいです。
発生している問題・エラー
NoMethodError in Admin::ArtistsController#show undefined method `genre' for #<ArtistGenre::ActiveRecord_Relation:0x00000000044fa5e8>
エラーが起きたコード
ruby:エラー
1@genres = @artist_genre.genre
該当するソースコード
ruby:model
1class Artist < ApplicationRecord 2 has_many :artist_genres, dependent: :destroy 3 has_many :genres, through: :artist_genres 4end
ruby:model
1class Genre < ApplicationRecord 2 has_many :artist_genres, dependent: :destroy 3end
ruby:model
1class ArtistGenre < ApplicationRecord 2 belongs_to :artist 3 belongs_to :genre 4end
ruby:controller
1class ArtistsController < ApplicationController 2 def show 3 @artist = Artist.find(params[:id]) 4 @artist_genre = ArtistGenre.where(artist_id: @artist.id) 5 @genres = @artist_genre.genre 6 end
ruby:view
1ジャンル 2<% @genres.each do |genre| %> 3 <%= @genre.name %> 4<% end %>
よろしくお願いします

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。