Ransack协会范围

时间:2015-02-22 23:03:22

标签: ruby-on-rails activerecord associations ransack

我正在尝试使用搜索过滤器中的关联范围; Contact has_many SurveysSubscriptions。我在下面创建了调查范围:

scope :score_in, -> (nps_type = nil) do
  where(score: NPS_RANGE[nps_type])
end

NPS_RANGE = {
   nil        => [*0..10],
  'detractor' => [*0..6],
  'passive'   => [7, 8],
  'promoter'  => [9, 10]
}

然而,当我执行Contact.ransack(surveys_score_in: 'detractor')时,它不起作用,并根据0而不是'string'.to_i == 0进行查找。

我甚至将[*0..6]定义为白名单,但它仍未运行。关于如何让Ransack使用这个范围的任何想法?

0 个答案:

没有答案