Добавить сложные запросы в рельсы - PullRequest
0 голосов
/ 25 сентября 2018

У меня сложная ситуация для запроса в Rails. Модели выглядят следующим образом:

  • Маршрут has_many Интересы
  • Маршрут has_many Дни
  • Дни has_many Очки

У меня есть 2 запроса, один для поиска маршрутов по Interest.title (более одного интереса):

    joins(:interests).where(interests: { title: interest.split(',')}).group('routes.id').having('count(interests.route_id) = ?', interest.split(',').length)

и другой для поиска маршрутов по Points.title (болееодин)

    joins(:days => :points).where(days: { points: { place_id: point.split(',')}}).group('routes.id').having('count(routes.id) = ?', point.split(',').length)

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

    joins(:interests).where(interests: { title: interest.split(',')}).group('routes.id').joins(:days => :points).where(days: { points: { place_id: point.split(',')}}).group('routes.id').having('count(routes.id) = ?', point.split(',').length+interest.split(',').length)

Но не работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...