在我的rails3.1应用程序中,我正在尝试在我的一个订单模型中应用以下逻辑。
def digital?
line_items.map { |line_item| return false unless line_item.variant_id = '102586070' }
end
我创建了一个名为prepaid_voucher的独立变体,其id = 102586070.尽管如此,结果却是假的...
订单有很多line_items
LineItem属于订单和变体
Variant有很多line_items
这是执行此类任务的最佳方式吗?我该如何解决?
答案 0 :(得分:1)
首先,我认为你想在这里==
加倍line_item.variant_id = '102586070'
,然后我宁愿选择那样的东西(如果我明白你想要的话)
def digital?
line_items.select{|line_item| line_item.variant_id == '102586070'}.any?
end
但是很难理解你真正想要的是什么,如果找不到id会有什么预期的行为?