我需要实现以下目标:
queryable.any_of(
between(:average_nightly_min_price, [10,100]),
between(:average_nightly_max_price, [110,1100])
)
是否可以使用any_of
和between
的组合。还是其他任何替代方案?
答案 0 :(得分:1)
queryable.any_of(
queryable.between(:average_nightly_min_price, [10,100]).selector,
queryable.between(:average_nightly_max_price, [110,1100]).selector
)
如果嵌入了iqueryable,它就不起作用。
对于2.0之前的ruby版本:
queryable.any_of(
queryable.between(average_nightly_min_price => [10,100]).selector,
queryable.between(average_nightly_max_price => [110,1100]).selector
)
答案 1 :(得分:0)
我还有ArgumentError
(如@christofferjoergensen),但mongoid 3.1.5
使用hashrocket语法而不是传递两个参数解决了它:
queryable.any_of(
queryable.between(:average_nightly_min_price => [10,100]).selector,
queryable.between(:average_nightly_max_price => [110,1100]).selector
)