Ruby on rails if关系错误的声明

时间:2013-10-29 16:12:56

标签: ruby-on-rails ruby

我在使用以下代码显示每个类别的名称时遇到问题, 有人可以提出建议吗?

<% if @products.category.name == "categoryname" %>

<% @products.each do | product | %>
<%= product.name %>
<% end %>

<% end %>

我收到以下错误: #

的未定义方法`category'

2 个答案:

答案 0 :(得分:5)

您似乎在@ products.all

上调用if语句

@products没有.category我假设您的错误判断。

您需要将代码更改为此代码才能生效......

<% @products.each do | product | %>
    <% if @products.category.name == "Name Here" %>
        <%= product.name %>
    <% end %>
<% end %>

答案 1 :(得分:1)

我假设@products是一个数组或AR :: Relationship。您可能希望/需要循环遍历该变量。看起来您正在尝试访问特定实例而不是整个阵列。

也许,@products.first.category.name或类似的东西