Как искать с помощью ассоциаций и с помощью солнечных пятен?Рельсы: поиск текста в солнечных пятнах с использованием ассоциаций моделей, используя: через
class StaticController < ApplicationController
def search
@search = Sunspot.search Business, Service do
fulltext params[:q]
paginate :per_page => 10
order_by_geodist(:location, *Geocoder.coordinates(params[:loc]))
end
@biz = @search.results
end
class Business < ActiveRecord::Base
attr_accessible :name
has_many :services, :through => :professionals
searchable do
text :name #name in business column
# how to do I get the services?
end
end
class Service < ActiveRecord::Base
attr_accessible :service
belongs_to :professional
end
class Professional < ActiveRecord::Base
belongs_to :business
has_many :services, as: :servicable
end
По мнению, у меня есть это (много зацикливание)
<%= @biz.each do |b| %>
<%= b.name %>
<!-- looping through professionals model -->
<% b.professionals.each do |prof| %>
<!-- looping through services model -->
<% prof.services.each do |s| %>
<%= s.service %>
<% end %>
<% end %>
<% end %>
Это работает, если я ищу имя, находящееся в бизнес-модели, но что, если я ищу через термин, который находится в модели Service
? Он будет отображаться некорректно, потому что мое представление происходит только с деловой стороны. Как сделать так, чтобы название компании всплывало, если я просматриваю модель Service
?
Благодаря