在 Ruby on Rails 中,给定一个值数组,我可以选择具有该数组中值的属性的所有记录:
trip_array = [31, 37, 40]
@flights = Flight.where(trip_id: trip_array)
这为我提供了 trip_id 为 31、37 或 40 的所有航班的列表。
但是,我需要选择一对值。我希望做这样的事情:
trip_sections_array = [[31, 1], [37, 2], [40, 1]]
@flights = Flight.where([:trip_id, :trip_section] => trip_section_array)
所以我实际上想返回所有航班 where (trip_id = 31 and trip_section = 1) or (trip_id = 37 and trip_section = 2) or (trip_id = 40 and trip_section = 1)
,但对于任意二维数组。
我怎样才能做到这一点?