if condition1
ModelName.named_scope1(parameter).named_scope2.named_scope3(parameter).named_scope4
elsif condition2
ModelName.named_scope1(parameter).named_scope2.named_scope3(parameter).named_scope5
elsif condition3
ModelName.named_scope1(parameter).named_scope2.named_scope3(parameter).named_scope6
elsif
ModelName.named_scope1(parameter).named_scope2.named_scope3(parameter).named_scope7
end
为了解决上述问题,我写了这样的东西,但它引发了两个查询。我怎样才能让它干?
values = ModelName.named_scope1(parameter).named_scope2.named_scope3(parameter)
if condition1
values.named_scope4
elsif condition2
values.named_scope5
elsif condition3
values.named_scope6
elsif
values.named_scope7
end
任何解决方案?
你检查了两个查询的日志吗?范围不应该在查询之前触发查询(除非您使用的是rails 2,而我对此不了解)。 –