首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在sunspot solr + rails 4中使用两个表进行索引

在sunspot solr + rails 4中使用两个表进行索引
EN

Stack Overflow用户
提问于 2015-07-20 16:46:59
回答 2查看 192关注 0票数 0

我在ROR中使用sunspot-solr,我需要使用两个表创建可搜索块的帮助。(两个表的连接)当索引形成时,我想要执行的查询是:

代码语言:javascript
复制
SELECT a.id,a.title
FROM table_one a,table_two b 
WHERE a.status=1 
AND a.id=b.id 
AND b.status=1  

我希望“标题”字段是可搜索的(文本),只有当id存在于两个表中,都有状态1,我希望他们是存储的字段(没有数据库命中)。

代码语言:javascript
复制
class TableOne
  has_many :table_twos
 searchable do
  text :title, :stored => true
  string :status, :stored => true
  string :id, :multiple => true, :stored => true do
         table_twos.map(&:id)
 end
end

当我搜索一个单词时,我得到了5个结果。

但是当我从table_two中删除其中一个结果的条目并再次搜索同一个词时..我仍然得到了5个结果,而我应该只得到另外4个结果。

有什么帮助吗?

EN

回答 2

Stack Overflow用户

发布于 2015-07-20 21:33:52

如果删除存储为solr/太阳黑子记录的关联记录,您将别无选择,只能对该记录重新编制索引。

票数 0
EN

Stack Overflow用户

发布于 2015-07-21 14:29:30

所以为了解决这个问题,我在我的控制器中做了一些类似without(:id,nil)的事情,我得到了我想要的结果。

但我不确定这是不是正确的方式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31512210

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档