范围比较两个没有返回任何数量

时间:2014-03-20 22:48:46

标签: ruby-on-rails postgresql scope

Rails 4 Postgres 9.something

模型has_many operand_1_1和operand_2

我想要一个范围,它返回所有具有更多operand_1而不是2的模型,但它每次都返回空。有人能告诉我我做错了吗?

 scope :comparison, -> operand_1, operand_2 {
   joins(operand_1.to_sym).
   joins(operand_2.to_sym).
   select('model_name.id').
   group('model_name.id').
   having("count(#{operand_1}.id) > count(#{operand_2}.id)")
 }

PS。我知道这是一个PSQL注入风险,有几天的验证:P

0 个答案:

没有答案