Ruby on rails 将自由文本和对象ID与thinking sphinx相结合

Ruby on rails 将自由文本和对象ID与thinking sphinx相结合,ruby-on-rails,thinking-sphinx,Ruby On Rails,Thinking Sphinx,以下索引将允许对给定模型的属性进行自由文本搜索: ThinkingSphinx::Index.define :firm, :with => :active_record do indexes activity indexes city end 对于允许在35%> 但是,此类属于:省,因此有一个省id列,类省有一个:name属性,该属性可能由多个可搜索单词组成。province.name可以集成到这个免费文本搜索中吗 是的,您可以在索引定义中引用关联: ThinkingSphinx

以下索引将允许对给定模型的属性进行自由文本搜索:

ThinkingSphinx::Index.define :firm, :with => :active_record do
  indexes activity
  indexes city
end
对于允许在
35%>


但是,此类属于:省,因此有一个
省id
列,类省有一个
:name
属性,该属性可能由多个可搜索单词组成。
province.name
可以集成到这个免费文本搜索中吗

是的,您可以在索引定义中引用关联:

ThinkingSphinx::Index.define :firm, :with => :active_record do
  indexes activity
  indexes city
  indexes province.name, :as => :province_name
end

添加此项后,您需要运行
ts:rebuild
rake任务,以便将数据包含在Sphinx索引中。

附带问题。语法出现在rails4-ish之前&我正在尝试统一我的语法用法。
as::province\u name
也能运行吗?是的,它们完全一样。我使用了较旧的hash rocket
=>
语法,因为这是您在问题中使用的语法(这也是我喜欢的,因为符号总是有其
前缀-但我尝试匹配提问者的样式)。感谢您的一致性。并指出我的潜伏!