Geocoder gem - Отображение рядом других моделей

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

#app/views/houses/show.html.erb

<h3>Houses</h3>
<ul>
<% for house in @house.nearbys(10) %>
  <li><%= link_to house.address, house %> (<%= house.distance.round(2) %> km)</li>
<% end %>
</ul>

Отлично работает только для одной модели, но для других... Мне нужна ваша помощь

заранее спасибо


person Alexander K.A.    schedule 22.08.2012    source источник
comment
Александр К.А. Я пытаюсь использовать тот же драгоценный камень геокодера в своем приложении. Но я получил такую ​​ошибку: github.com/alexreisner/geocoder/issues/282 Помогите пожалуйста мне.   -  person Ganesh Kunwar    schedule 22.08.2012
comment
Я не использую MongoDB, и у меня даже нет этих строк в моем местоположении, извините, я все еще новичок в рельсах.   -  person Alexander K.A.    schedule 22.08.2012


Ответы (2)


http://media.railscasts.com/assets/episodes/videos/273-geocoder.mp4

person Ganesh Kunwar    schedule 22.08.2012
comment
Спасибо, но в этом примере используется только одна модель, мне нужно что-то похожее, но с большим количеством моделей. - person Alexander K.A.; 22.08.2012

Метод .near — это метод класса, поэтому вы можете сделать что-то вроде этого:

Магазин.около(@дом.адрес)

и это вернет магазины рядом с домом (при условии, что вы геокодируете атрибут/метод с именем «адрес» для вашей модели дома). Вы также можете использовать координаты из @house и указать, насколько далеко от нужных координат, в качестве второго аргумента.

Shop.near([@house.latitude, @house.longitude], 20)

вернет все магазины в пределах 20 миль от геокоординат дома.

person HLSdropout    schedule 07.03.2014