2014-04-04 189 views
0

我有一對多的工作和公司之間的關聯,我已經實現了使用太陽黑子寶石的工作搜索表單,但我想要當我搜索company_name我有我搜索的所有公司搜索結果我怎麼辦這Rails太陽黑子搜索

這是我的工作模式

class Job < ActiveRecord::Base 

belongs_to :company 




searchable do 
    text :job_title, boost: 4 
    text :profile_recherche 
end 

這是我的公司模式

class Company < ActiveRecord::Base 

has_many :jobs 

這是我的工作搜索控制器

def search 

@jobs = Sunspot.search(Job) do 
    keywords params[:query] 
    fulltext params[:query] 
    paginate(page: params[:page], per_page: 1) 
end.results 

respond_to do |format| 
    format.html { render :action => "index" } 
end 

end 
+0

什麼時候你正在尋找公司?這只是一個搜索工作......你不應該有公司模型的可搜索領域? –

回答

0

這聽起來像你想通過job_title,profile_reserche和company.name來搜索工作。如果我猜你想要什麼正確的,改變你的搜索塊,像這樣應該這樣做:

這裏
class Job < ActiveRecord::Base 

    belongs_to :company 

    searchable do 
    text :job_title, boost: 4 
    text :profile_recherche 
    text :company_name do 
     company.name 
    end 
    end 
end 

一個需要注意的是,如果你有標記的重疊,莖,正克,無論這些不同領域之間,你可以有一些有趣的搜索結果。