遍历Rails5模型对象,并呈现与某个特定的枚举密钥值对象
问题描述:
我有以下枚举:遍历Rails5模型对象,并呈现与某个特定的枚举密钥值对象
enum productgroup: { regular_product: 0, plaque_type: 1, plaque_size: 2, plaque_proof: 3}
与以下产品循环:
<% @products.each do |product| %>
<%= render 'product_row', product: product, order_item: @order_item %>
<% end %>
我有几十个产品,每个属于特定的枚举产品组。我想让我的产品循环只呈现特定枚举群组类型的产品。
答
您可以通过枚举使用where
方法进行筛选。假设@products
是ActiveRecord的集合,那么你可以是这样的:
<% @products.where(productgroup: :regular_product).each do |product| %>
<%= render 'product_row', product: product, order_item: @order_item %>
<% end %>
我已经使用:regular_product
作为一个例子,但你可以替换一个变量,甚至用户params[:productgroup]
选择的参数。