Ruby on rails 提升思维斯芬克斯-深度联想

Ruby on rails 提升思维斯芬克斯-深度联想,ruby-on-rails,thinking-sphinx,Ruby On Rails,Thinking Sphinx,从TS 2.x升级到TS 3.1.1时遇到问题 我有一个完整的协会: bar通过bar\U category\U groups拥有多个类别组 在我的bar索引中,我有这样一个,它运行良好: 具有条形图类别组(:类别组id),:as=>:类别组 我还有属于酒吧的“foo”模型。 在我的foo索引中,我以前有过这个,它在TS 2.x中运行良好 有bar.bar\u category\u组(:category\u group\u id),:as=>:cat\u组 在TS 3中,我得到“Thinking

从TS 2.x升级到TS 3.1.1时遇到问题

我有一个完整的协会: bar通过bar\U category\U groups拥有多个类别组

在我的bar索引中,我有这样一个,它运行良好:

具有条形图类别组(:类别组id),:as=>:类别组

我还有属于酒吧的“foo”模型。 在我的foo索引中,我以前有过这个,它在TS 2.x中运行良好

有bar.bar\u category\u组(:category\u group\u id),:as=>:cat\u组

在TS 3中,我得到“ThinkingSphinx::MissingColumnError:列栏\类别\组不存在”

我的索引顶部也有bar和bar.bar_category_组的连接


似乎我们失去了挂起“属于”关联(如果愿意,则为“深度”关联)的直通关联的功能。

您不需要将列作为方法参数,而是将其作为方法链接:

has bar.bar_category_groups.category_group_id, :as => :cat_groups
参数语法是在旧版本的TS中添加的,用于解决Ruby 1.8中的保留方法,但现在BasicObject已经成为一种东西,不再需要它了