Ruby on rails 未定义的方法`值';对于#<;CategoryItemValue::ActiveRecord_Associations_CollectionProxy:0x007ff9706d24c0>;
这很简单,但不起作用。我错过了什么 控制器Ruby on rails 未定义的方法`值';对于#<;CategoryItemValue::ActiveRecord_Associations_CollectionProxy:0x007ff9706d24c0>;,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,这很简单,但不起作用。我错过了什么 控制器 @guide = Guide.friendly.find(params[:guide_id]) @category = @guide.categories.friendly.find params[:id] @items = @category.category_items 看法 给出了无误差的计算方法 # 在category\u item\u values表中有一个values列,所以我不确定问题出在哪里。item
@guide = Guide.friendly.find(params[:guide_id])
@category = @guide.categories.friendly.find params[:id]
@items = @category.category_items
看法
给出了无误差的计算方法
#
在
category\u item\u values
表中有一个values
列,所以我不确定问题出在哪里。item.category\u item\u values
是CollectionProxy
实例(人们可能会认为它是一种数组)
每个category\u项目
都有[很可能,您没有提供足够的信息来更精确地猜测]许多值。如果上述假设是正确的,那么您可以这样做:
<% @items.each do |item| %>
<% item.category_item_values.each do |value| %>
<%= value %> # or maybe (depending on your model) <%= value.value %>
<% end %>
<% end %>
#或者(取决于您的型号)
item.category\u item\u values
是CollectionProxy
实例(人们可能认为它是一种数组)
每个category\u项目
都有[很可能,您没有提供足够的信息来更精确地猜测]许多值。如果上述假设是正确的,那么您可以这样做:
<% @items.each do |item| %>
<% item.category_item_values.each do |value| %>
<%= value %> # or maybe (depending on your model) <%= value.value %>
<% end %>
<% end %>
#或者(取决于您的型号)
您必须循环查看每个类别项目值
,以获得结果,因为这表明
您的类别项目值是一个关联
所以你可以做一些像
<% item.category_item_values.each do |category_item_value| %>
<%= category_item_value.value %>
<% end %>
您必须循环查看每个
类别项目值
,以获得结果,因为这表明
您的类别项目值是一个关联
所以你可以做一些像
<% item.category_item_values.each do |category_item_value| %>
<%= category_item_value.value %>
<% end %>
谢谢你的回答。只是有个不相关的问题。如果我将一条记录存储在变量中,比如jon=User.find(3)
,并在jon.name
页面上调用变量几次,这比仅仅使用User.find(3.name)
3次快吗?还是每次使用变量时它仍然执行db查找?是的。这种技术被称为“缓存”。代码不会对数据库执行三次查询,而是只执行一次。感谢您的帮助谢谢您的回答。只是有个不相关的问题。如果我将一条记录存储在变量中,比如jon=User.find(3)
,并在jon.name
页面上调用变量几次,这比仅仅使用User.find(3.name)
3次快吗?还是每次使用变量时它仍然执行db查找?是的。这种技术被称为“缓存”。代码不会对数据库执行三次查询,而是只执行一次。感谢您的帮助