RoR添加循环的位置

时间:2012-11-08 20:20:11

标签: ruby-on-rails

我列出了一个名为books的表的内容。 为了显示所有记录,我使用:       <%@ books.each do | books | %GT;

我可以添加一个where子句,以便只列出匹配的书籍吗?     <%Books.where(:type_id =>'1')do | books | %GT;

由于

2 个答案:

答案 0 :(得分:0)

从技术上讲,你可以做这个'Book'(我相信它应该是Book not not books,当我们得到模型时)是你所指的Activerecord模型,但作为一种练习你不应该这样做因为,在这里你正在让您的业务登录到您的视图。

通常,业务逻辑应该驻留在您的模型层中。

答案 1 :(得分:0)

你需要.each迭代,模型名称通常是单数

<% Book.where(:type_id => 1, :author_id => 2).each do |book| %>
  <%= book.title %>
<% end %>

编辑:添加了第二个查询条件,因为它是在评论中询问的。