通过查询数组在solr中选择多个值

s6fujrry  于 2022-11-05  发布在  Solr
关注(0)|答案(1)|浏览(211)

我有一个带有Solr字段多值的Rails应用程序:

<field name='industry_id' type='pint' indexed="true" stored="true" required="true" docValues="true" multiValued="true" />

我想搜索字段多值 使用如下数组:经过研究,我知道如果我想这样做,它必须像fq: industry_id: (1 2 3)一样,但在solr_service中,我定义方法:


# ids is an array

def suggest_jobs(ids)
    q = "industry_id: #{ids}"
    send_request(q)
end

def send_request(q_param)
    @solr.get 'select', params: {
      'q': q_param
    }
end

这不是一个语法。我如何编辑方法以匹配格式fq: industry_id: (1 2 3)

jdzmm42g

jdzmm42g1#

我认为您希望将suggest_jobs中的ids扩展为逗号分隔的列表,并将该值用括号括起来,如下所示:


# ids is an array

def suggest_jobs(ids)
    ids_list = ids.join(",")
    q = "industry_id:(#{ids_list})" # industry_id:(1,2,3)
    send_request(q)
end

你的send_request方法是设置q参数,但是你在问题中提到了fq域。任何一个都可以,只要确保在需要时进行调整。

相关问题