ruby-on-rails-3 – 如何找到最高价格的记录?
发布时间:2020-12-16 20:20:41 所属栏目:百科 来源:网络整理
导读:这返回最大值,而不是完整的记录: self.prices.maximum(:price_field) 目前,我发现这样的记录: def maximum_price self.prices.find(:first,:conditions = "price = #{self.prices.maximum(:price_field)}" )end 这是正确的方法吗?因为上述需要两个SQL语句
这返回最大值,而不是完整的记录:
self.prices.maximum(:price_field) 目前,我发现这样的记录: def maximum_price self.prices.find(:first,:conditions => "price = #{self.prices.maximum(:price_field)}" ) end 这是正确的方法吗?因为上述需要两个SQL语句来使它工作,而且它不知何故不是正确的. PS.另外,如果多个记录具有相同的“最大”值,那么它应该得到最新的updated_at值.那么这将意味着另一个SQL语句? PPS.有没有人知道Rails中的AREL和非AREL内容的详细参考? ActiveRecord查询的Rails指南还不够! (我使用的是Rails 3) === UPDATE === 使用AREL我做以下: self.prices.order("updated_at DESC").maximum(:price_field) 但这只给出最大值,而不是完整的记录:( 解决方法
这样的东西怎么样?
self.prices.order("price DESC").first (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |