rails - active admin - PG :: InvalidColumnReference: ОШИБКА: выражения SELECT DISTINCT ON должны соответствовать исходным выражениям ORDER BY - PullRequest
0 голосов
/ 27 мая 2018

У меня есть область видимости в модели, которая прекрасно работает, когда я вызываю ее с консоли rails, но когда я пытаюсь использовать ее в активном администраторе, выдается ошибка

Вот область действия

scope :clicked, -> { select('distinct on (email_stats.clicked_url) email_stats.*').order(:clicked_url, :action_performed_at)}

Вот ошибка, которую я получаю, когда пытаюсь использовать ее в активном администраторе

ActionView :: Template :: Error (PG :: InvalidColumnReference: ОШИБКА: выражения SELECT DISTINCT ON должны совпадать с начальнымиВыражения ORDER BY ЛИНИЯ 1: ВЫБРАТЬ различимый для (email_stats.clicked_url) email_stats. * ... ^: ВЫБРАТЬ различимый для (email_stats.clicked_url) email_stats.».« Clicked_url »ASC,« email_stats ».« Action_performed_at »ASC LIMIT $ 1 OFFSET $ 2):

Может кто-нибудь сообщить мне, что я здесь упускаю?Я просматривал другие сообщения, но ни один из них не показался мне полезным.

1 Ответ

0 голосов
/ 28 мая 2018

Попытка использовать разные внутри области может быть проблематичной.Вместо этого я использую:

controller do
  def apply_filtering(collection)
    super.distinct
  end
end
...