Использование запроса "в пределах" возвращает SQLException - PullRequest
0 голосов
/ 20 октября 2018

При использовании функции внутри запроса я получаю исключение SQL через SQLite3.

ActiveRecord::StatementInvalid (SQLite3::SQLException: no such function: least: SELECT "groups".* FROM "groups" WHERE (groups.lat IS NOT NULL AND groups.lng IS NOT NULL) AND (groups.lat>-0.7228492642679549 AND groups.lat<0.7228492642679549 AND groups.lng>-0.722849264267955 AND groups.lng<0.722849264267955) AND ((
      (CASE WHEN groups.lat IS NULL OR groups.lng IS NULL THEN NULL ELSE
      (ACOS(least(1,COS(0.0)*COS(0.0)*COS(RADIANS(groups.lat))*COS(RADIANS(groups.lng))+
      COS(0.0)*SIN(0.0)*COS(RADIANS(groups.lat))*SIN(RADIANS(groups.lng))+
      SIN(0.0)*SIN(RADIANS(groups.lat))))*3963.1899999999996)
      END)
      <= 50))):

В моей пользовательской модели эта функция вызывается с помощью этой функции:

  def local_groups
    Group.within(50, units: :miles, origin: [lat, lng])
  end

Запросработает нормально в браузере, но я настроен как режим API.Когда я запрашиваю через реакции и axios, я сталкиваюсь с этой проблемой на втором или третьем запросе get.Как только происходит ошибка, она сохраняется до перезапуска сервера.Я прошу о помощи, потому что это выглядит как унылый.

...