2
的Rails 2.3.5 Searchlogic 2.3.27Searchlogic '或' 對相關記錄條件
我有以下型號;
class Outbreak < ActiveRecord::Base
has_many :bacterial_agents, :dependent => :destroy
has_many :bacteria, :through => :bacterial_agents
has_many :viral_agents, :dependent => :destroy
has_many :viruses, :through => :viral_agents
end
class BacterialAgent < ActiveRecord::Base
belongs_to :outbreak
belongs_to :bacterium
end
class Bacterium < ActiveRecord::Base
has_many :bacterial_agents
has_many :outbreaks, :through => :bacterial_agents
end
class ViralAgent < ActiveRecord::Base
belongs_to :outbreak
belongs_to :virus
end
class Virus < ActiveRecord::Base
has_many :viral_agents
has_many :outbreaks, :through => :viral_agents
end
目前,我試圖讓Searchlogic接受一個「OR」條件的模型病毒和細菌之間的搜索,沿着這些線路;
params[:search] = {"bacterial_agents_bacterium_name_like_any" => "VTEC O157", "viral_agents_virus_name_like_any" => "NOROVIRUS"}
@search = Outbreak.search(params[:search])
範圍「_or_viral_agents_virus_name_like」無法識別儘管這兩個領域沒有「或」工作。返回的輸出應該顯示細菌名稱類似於「VTEC O157」或病毒名稱與「NOROVIRUS」類似的所有記錄(「any」子句允許每個名稱都有多個名稱)。
任何想法?