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,而我對此不瞭解)。 –