Как мне нужно использовать тип geo_point с Chewy? - PullRequest
0 голосов
/ 06 апреля 2020

§Привет, ребята, у меня проблема с geo_point определением типа

Код моего Chewy Index:

class CoordinatesIndex < Chewy::Index
    define_type Coordinate.includes( :location ) do
        field :location, type: 'geo_point'
        field :user_id, type: 'integer'
        field :start_at
        field :finish_at
        field :created_at
    end
end

Также у меня есть координата отношения has_one location, location location_to координата.

Поля модели местоположения: lat, lon

Ошибка, которую я получаю:

{"type"=>"mapper_parsing_exception", "reason"=>"failed to parse field [location] of type [geo_point]", "caused_by"=>{"type"=>"parse_exception", "reason"=>"field must be either [lat], [lon] or [geohash]"}}

Почему?

Спасибо

1 Ответ

0 голосов
/ 06 апреля 2020

Для будущих Googler'ов это работает нормально:

field :location, type: 'geo_point', value: ->{ { lat: location.lat, lon: location.lon } }

вместо

 field :location, type: 'geo_point'
...