Zend_Search_Lucene和范围搜索

时间:2010-04-09 10:31:47

标签: zend-framework search lucene zend-search-lucene

我的索引中有一堆int键字段,并试图像这样进行简单的范围搜索:

`gender:1 AND height:[120 TO 180]`

这应该给我男性在120到180的高度范围。但由于某种原因我得到这个例外:

`At least one range query boundary term must be non-empty term`

我该如何调试?只是Zend_Search_Lucene是错误的吗?

2 个答案:

答案 0 :(得分:0)

这是Zend Framework的查询解析器中的an open bug。创建于2008年12月,具有高度优先级......但仍未解决。

答案 1 :(得分:0)

首先,您必须在找到

之前将默认分析器更改为TextNum以允许数字

ZF2:

\ZendSearch\Lucene\Analysis\Analyzer\Analyzer::setDefault(new \ZendSearch\Lucene\Analysis\Analyzer\Common\TextNum\CaseInsensitive());

其次,您的日期字段必须是关键字,而不是文本。