Bookin Rails 的未定义方法'each'



这是我的控制器static_pages: -

class StaticPagesController < ApplicationController #StaticPagesController is a ruby class that inherits from ApplicationController
  def home
  end
  def genre
    @genre=Genre.all
    @book=Book.find_by(genre_id:1)
  end
  def accessories
  end
  def aboutus
  end
  def contactus
  end
end
#home, genre and accessories are actions of the controller

这是我视图类型的片段。html.erb:

<% @genre.each do|genre|%>
                <tr>
                    <td><%=genre.genre_id %></td>
                    <br>
                    <td><%=genre.genre_name %></td>
                    <br>
                    <td><%=genre.description %></td>
                    <br>
                    <br>
                </tr>
<% end %>
<% @book.each do|book|%>
                <tr>
                    <td><%=book.book_name %></td>
                    <br>
                    <td><%=book.pages %></td>
                    <br>
                    <td><%=book.stock %></td>
                    <br>
                    <td><%=book.synopsis %></td>
                    <br>
                    <td><%=book.mrp%></td>
                    <br>
                    <td><%=book.author %></td>
                    <br>
                    <td><%=book.publisher %></td>
                    <br>
                    <td><%=book.rating %></td>
                    <br>
                    <td><%=book.genre_name%></td>
                    <br>
                    <td><%=book.discount %></td>
                    <br>
                    <br>
                </tr>
<% end %>

当我打开流派视图时,我会遇到本书部分的错误。它说#book的未定义方法"每个":0x007F014AB326D8。我不确定为什么要遇到此错误,因为我从类型部分复制了粘贴的东西,但这没有显示错误,所以为什么?

 def genre
   @genre=Genre.all
   @books =Book.where(genre_id:1)
 end

这里的书。

根据此处的文档

find_by -

find_by方法找到了与某些条件相匹配的第一个记录。例如:

因此,从本质上讲,它将查询的结果仅限为1个记录,并且每种方法都在收集记录

上工作。

SELECT "books".* FROM "books" WHERE "books"."genre_id" = $1 LIMIT 1[["genre_id", 1]]

如果我在哪里使用 book.where(genre_id:1(

触发的查询是SELECT "books".* FROM "books" WHERE "books"."genre_id" = $1 [["genre_id", 1]]

最新更新