Apache solr

时间:2015-07-14 06:12:59

标签: php search solr

我使用PHP在Solr中创建了一个带有类型字符串的搜索应用程序,并且工作正常。发现的唯一问题是它不能支持不区分大小写的搜索。在搜索时,我发现solr不支持使用类型"字符串"进行不区分大小写的搜索。

所以我创建了一个自定义类型" string_ci"并配置如下。

    <field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" /> -
    <field name="loc_code" type="string" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="loc_name" type="string_ci" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="state" type="string" indexed="true" stored="true" required="true" multiValued="false" />

这是&#34; string_ci&#34;

的字段类型定义
    <fieldType name="string_ci" class="solr.TextField"
            sortMissingLast="true" omitNorms="true">
            <analyzer>
                <tokenizer class="solr.KeywordTokenizerFactory"/>           
                <filter class="solr.LowerCaseFilterFactory" />
       </analyzer>
    </fieldType>

不幸的是,这不起作用。有人能指出我哪里出错吗?

1 个答案:

答案 0 :(得分:2)

试试这个

<title  ng-bind="(title| makeCaps)"></title>


app.filter('makeCaps',function(){

  return function(input){

   var capsInput = input.split(' '),
       newInput = [];

   angular.forEach(capsInput,function(val,index){
    newInput.push(val.substr(0,1).toUpperCase()+val.substr(1));   
  });
    return newInput.join(' ');
  }

});