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.address)

и това ще върне магазините в близост до къщата (ако приемем, че геокодирате чрез атрибут/метод, наречен "address" за вашия модел къща). Можете също да използвате координатите от @house и да въведете колко далеч от координатите искате като втори аргумент.

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

ще върне всички магазини в рамките на 20 мили от геокоординатите на къщата.

person HLSdropout    schedule 07.03.2014