タイトルに記載あるとおりNoMethodError inエラーが解決できません。
Showing /home/ec2-user/environment/bookers2/app/views/users/show.html.erb where line #11 raised:
undefined method `title' for #Book::ActiveRecord_Relation:0x00007fed51192b20
エラー文です。タイトルの情報が引っ張ってこれないというような解釈であってるのでしょうか??
本の感想を投稿できるサイトを作っています。
本の詳細画面books/showからユーザ名を押すとユーザが投稿した本の一覧画面user/showへリンクするように設定したいのですが<td><%= link_to @books.title, book_path(@books.id) %></td>にエラーが出てしまいます。
user/show.html.erb↓
<h2>Books</h2> <table> <tr> <th></th> <th>Title</th> <th>Option</th> </tr> <%= @users.each do |user|%> <tr> <td><%= attachment_image_tag user, :profile_image, :fill, 30, 30, fallback: "no_image.jpg" %></td> <td><%= link_to @books.title, book_path(@books.id) %></td> <td><%= @books.body %></td> </tr> <% end %> </table>
users_controller.rb↓
def show @users = User.all @books = Book.all end
テーブルはusersとbooks2つあり、usersの方にhas_many、booksの方にbelongs_toの設定はしてあります。ルーティングはネストしていません。
コントローラでの指定の仕方が違うのか、HTMLファイル内の記述の仕方が違うのか、それ以前の問題なのか、どのようにしたらいいのか分からず行き詰まっています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。