Javascript Solr (facet) 查询脚本无法正常工作
Javascript Solr (facet) query script not working correctly
我正在使用 solr-client 执行分面 Solr 查询,我的 javascript solr 查询脚本的结果与 Solr 中列出的结果不匹配。
所以在 Solr 中,我创建的查询如下所示。这给出了我想要的结果。
而我对应的javascript分面查询脚本如下。
exports.list_of_all_car_trims = function(solrPrdCfsClient, callback) {
var carTrimsQuery = solrPrdCfsClient.createQuery()
.q('*:*')
.start(0)
.rows(10)
.matchFilter('ManufacturerName','Ford')
.matchFilter('RangeModelWithYears','Fusion (02-12)')
.facet({
field:'TrimName',
mincount:'1'
});
solrPrdCfsClient.search(carTrimsQuery,function(err,obj) {
if(err) {
callback(err,null);
}
else {
callback(null, obj.facet_counts.facet_fields);
console.log(obj.facet_counts.facet_fields);
}
});
};
但是,我的 javascript 查询脚本的结果与 Solr 的结果不匹配。
我假设我有正确的过滤器 ('ManufacturerName','Ford' & 'RangeModelWithYears', 'Fusion (02-12)'),但可能不在 javascript 查询脚本中的正确位置?
如有任何帮助,我们将不胜感激。谢谢
我认为这可能是我遗漏的东西 'minor',它确实是(虽然这个 'minor' 东西没有通过我的整个测试!)。
因为我的 matchFilter 标准包含空格,所以我需要在其周围添加一些语音标记。
我下面的代码有效。
exports.list_of_all_car_trims = function(solrPrdCfsClient, ManufacturerName, RangeModelWithYears, callback) {
var carTrimsQuery = solrPrdCfsClient.createQuery()
.q('*:*')
.start(0)
.rows(10)
.matchFilter('ManufacturerName','Ford')
.matchFilter('RangeModelWithYears','"Fusion (02-12)"')
.facet({
on:true,
field:'TrimName',
mincount:'1',
});
solrPrdCfsClient.search(carTrimsQuery,function(err,obj) {
if(err) {
callback(err,null);
}
else {
callback(null, obj.facet_counts.facet_fields);
}
});
};
我正在使用 solr-client 执行分面 Solr 查询,我的 javascript solr 查询脚本的结果与 Solr 中列出的结果不匹配。
所以在 Solr 中,我创建的查询如下所示。这给出了我想要的结果。
而我对应的javascript分面查询脚本如下。
exports.list_of_all_car_trims = function(solrPrdCfsClient, callback) {
var carTrimsQuery = solrPrdCfsClient.createQuery()
.q('*:*')
.start(0)
.rows(10)
.matchFilter('ManufacturerName','Ford')
.matchFilter('RangeModelWithYears','Fusion (02-12)')
.facet({
field:'TrimName',
mincount:'1'
});
solrPrdCfsClient.search(carTrimsQuery,function(err,obj) {
if(err) {
callback(err,null);
}
else {
callback(null, obj.facet_counts.facet_fields);
console.log(obj.facet_counts.facet_fields);
}
});
};
但是,我的 javascript 查询脚本的结果与 Solr 的结果不匹配。
我假设我有正确的过滤器 ('ManufacturerName','Ford' & 'RangeModelWithYears', 'Fusion (02-12)'),但可能不在 javascript 查询脚本中的正确位置?
如有任何帮助,我们将不胜感激。谢谢
我认为这可能是我遗漏的东西 'minor',它确实是(虽然这个 'minor' 东西没有通过我的整个测试!)。
因为我的 matchFilter 标准包含空格,所以我需要在其周围添加一些语音标记。
我下面的代码有效。
exports.list_of_all_car_trims = function(solrPrdCfsClient, ManufacturerName, RangeModelWithYears, callback) {
var carTrimsQuery = solrPrdCfsClient.createQuery()
.q('*:*')
.start(0)
.rows(10)
.matchFilter('ManufacturerName','Ford')
.matchFilter('RangeModelWithYears','"Fusion (02-12)"')
.facet({
on:true,
field:'TrimName',
mincount:'1',
});
solrPrdCfsClient.search(carTrimsQuery,function(err,obj) {
if(err) {
callback(err,null);
}
else {
callback(null, obj.facet_counts.facet_fields);
}
});
};