我是Rails的新手......有没有更好的方法来重构这段代码:
^
答案 0 :(得分:2)
您可以定义类似“价格”(模糊的方法名称,以避免使用get_或set_前缀)来预期参数,这将是查询模型的最大值或最小值:
def prices(what)
Product.public_send(what, :price).to_i
end
然后您可以通过将最小值或最大值作为符号或字符串传递来使用它。
答案 1 :(得分:0)
我不确定你的功能是否有效 但你可以尝试(如果价格是列,价格是int而不是字符串)
def get_product_price_minimum
Product.order('price').last
end
答案 2 :(得分:-1)
def get_product_price(value) #value max or min as sym or string
Product.pluck(:price).send(value.to_s)
end
或任何你想要的
UPD: 这是不怎么做 - 如果您已经将列定价为整数,那么您已经拥有的代码很容易 - 只需删除.to_i