Я пытаюсь найти объект @center возле объекта @school в зависимости от местоположения и показать центр на карте. Я мимо моего кода здесь, потому что я не уверен, что я сделал:Rails, mapbox и geocoder: найти объект рядом с другим объектом
здесь код отображения карты (с 2 данных: школа и центр):
<div id="school-map" data-coordinates="<%= @school.coordinates.reverse %>" data-centers="<%= @center.coordinates.reverse %>"> </div>
здесь модель center.rb :
class Center
include Mongoid::Document
include Geocoder::Model::Mongoid
has_many :schools
accepts_nested_attributes_for :schools
field :title, type: String
field :image_path, type: String
field :Attachment_path, type: String
field :website, type: String
field :phone, type: String
field :street, type: String
field :zipcode, type: String
field :city, type: String
field :coordinates, type: Array
geocoded_by :adress
#after_validation :geocode
def adress
[street, zipcode, city].compact.joint(', ')
end
end
В school.rb модели я попробовать этот метод:
def center_near_school(school_adress_coordinates)
school_adress_coordinates = @school.coordinates.reverse
center = Center.near(school_adress_coordinates, 1, units: :km)
конец
и я пытаюсь показать строку типа «да» или «нет», чтобы знать, если мой метод работы:
<% if @school.center_near_school %>
<p> OUI </p>
<% else %>
<p> NON </p>
<% end %>
создать отношения (HAS_MANY: школы и has_many: центры) в обеих моделях, маркеры поколений создаются в show.js, которые отображают карту.
Помогает ли кто-нибудь найти какие-либо решения для создания этой функции?
Не стесняйтесь просить меня, чтобы изменить этот пост с дополнительной информацией (код, точностями ...)
спасибо!
'join', а не' joint'. Что уже работает? Метод 'near', который вы хотите написать? –
@EricDumil метод рядом является методом геокодера, который уже существует –
So. Что работает, а что нет? Вы получаете какую-либо ошибку? –