2013-04-16 1 views
0

Я продолжаю получать ту же ошибку, когда пытаюсь применить драгоценность Geocoder к моей форме поиска. В Event Controller вы увидите 2 разных запроса. Если я использую их самостоятельно, они отлично работают. Но, я использую их вместе, как показано здесь, это вызывает ошибку.Geocoder + Rails 3.2 // SQLException: нет такого столбца: distance:

QLite3::SQLException: no such column: distance: SELECT "events"."id" AS t0_r0, "events"."header_id" AS t0_r1, "events"."start_date" AS t0_r2, "events"."finish_date" AS t0_r3, "events"."address" AS t0_r4, "events"."place" ....... 

модель Event

scope :non_timetable, joins(:header).where(headers: {weekly: false}) 

Controller Event

def search 

@events_casual = Event.non_timetable.near(params[:search_where], 20) 
@events_casual = @events_casual.where("events.finish_date >= ?", @time).where((["CAST(headers.title_es as varchar(255)) LIKE ?", "%#{params[:query]}%"] || ["CAST(headers.title_en as varchar(255)) LIKE ?", "%#{params[:query]}%"] || ["CAST(headers.title_eu as varchar(255)) LIKE ?", "%#{params[:query]}%"] || ["CAST(headers.title_fr as varchar(255)) LIKE ?", "%#{params[:query]}%"])).includes(:header).order("events.start_date ASC") 
... 

end 

Похоже, я должен был указать имя таблицы для запроса Geocoder. Но я понятия не имею, как это сделать. Любая помощь очень ценится !! Спасибо

ответ

0

Возможно, тот же выпуск Geocoder SQLite3::SQLException: no such column: lon:. Но я рекомендую вам ознакомиться с документацией Geocoder для Distance Queries in SQLite. И rails cast. Надеюсь, это поможет вам.

+0

Благодарим за быстрый ответ. Перезагрузка не работала! Я знаю ограничения в SQLite. Однако, насколько я понимаю, это должно сработать. Неа? Здесь также есть информация, https://github.com/alexreisner/geocoder/issues/42. Но не воспользоваться. –

+0

Я не уверен, но, вероятно, его версия проблемы с Geocoder. Вы пытаетесь с последней версией? В ссылке вы дали одно предложение использовать драгоценный камень из этой ветви: gem 'geocoder',: git => 'git: //github.com/alexreisner/geocoder.git',: branch => 'no_grouping' Can вы попробуете это? –

+0

Я пробовал и получил эту ошибку. fatal: неоднозначный аргумент 'no_grouping': неизвестная ревизия или путь не в рабочем дереве. Используйте '-' для разделения путей от ревизий. Что это значит? –