【发布时间】:2015-04-17 14:48:53
【问题描述】:
我正在从头开始构建电子商务网站。 每个产品都有许多产品详细信息,每个 product_detail 是该产品的 [size,price_of_that_size,color,etc]。
在我的产品控制器上,我得到了:
def index
@products = Product.all
@categories = Category.all
end
事情在我的 index#view 上,我需要该产品的最低 product_details 价格,以便能够显示每个产品的起始价格。
在我的产品#show 控制器上,我这样做是为了获取该信息:
@retailprice = @product.product_details.order("retail_price ASC").first
但在我的 Product#index 上,我只有 @products.all 我已经在我的视图上进行迭代。
打电话是不好的做法
product.product_details.order("retail_price ASC").first
在我看来每次迭代?
我经常需要命令显示信息(asc / desc),但是当在控制器中执行它不是很自然时,我不知道将它放在哪里。
任何建议将不胜感激。
【问题讨论】:
-
尝试在您的模型 deflowest_price_details product_details.order("retail_price ASC").first end 和模板中创建方法,您可以像 product.lowest_price_details 一样使用。
标签: ruby-on-rails database activerecord view