Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Solr 4.5.1 Suggester上返回更多字段?_Solr_Solr Schema - Fatal编程技术网

如何在Solr 4.5.1 Suggester上返回更多字段?

如何在Solr 4.5.1 Suggester上返回更多字段?,solr,solr-schema,Solr,Solr Schema,我正在使用Solr4.5.1为我的系统推荐电影。我需要solr不仅返回move_title,还返回属于电影的电影id。例如,;这正是我需要的: <response> <lst name="responseHeader"> <int name="status">0</int> <int name="QTime">1</int> </lst> <lst n

我正在使用Solr4.5.1为我的系统推荐电影。我需要solr不仅返回move_title,还返回属于电影的电影id。例如,;这正是我需要的:

<response>
    <lst name="responseHeader">
        <int name="status">0</int>
        <int name="QTime">1</int>
    </lst>
    <lst name="spellcheck">
        <lst name="suggestions">
            <lst name="har">
                <int name="numFound">6</int>
                <int name="startOffset">0</int>
                <int name="endOffset">3</int>
                <arr name="suggestion">
                    <doc>
                        <str name="name_autocomplete">hard eight (1996)</str>
                        <str name="movie_id">144</str>
                    </doc>
                    <doc>
                        <str name="name_autocomplete">hard rain (1998)</str>
                        <str name="movie_id">14</str>
                    </doc>
                    <doc>
                        <str name="name_autocomplete">harlem (1993)</str>
                        <str name="movie_id">1044</str>
                    </doc>
                </arr>
            </lst>
        </lst>
    </lst>
</response>   

0
1.
6.
0
3.
硬八(1996)
144
大雨(1998年)
14
哈莱姆(1993)
1044

我的搜索组件配置如下:

<searchComponent name="suggest" class="solr.SpellCheckComponent">
    <lst name="spellchecker">
        <str name="name">suggest</str>
        <str name="classname">org.apache.solr.spelling.suggest.Suggester</str>
        <str name="lookupImpl">org.apache.solr.spelling.suggest.tst.TSTLookup</str>
        <str name="field">name_autocomplete</str>
        <str name="spellcheck.onlyMorePopular">true</str>
    </lst>
</searchComponent>

建议
org.apache.solr.spelling.Suggester
org.apache.solr.spelling.suggest.tst.TSTLookup
名称自动完成
真的
我的请求hadler配置如下:

<requestHandler name="/suggest" class="org.apache.solr.handler.component.SearchHandler">
    <lst name="defaults">
        <str name="spellcheck">true</str>
        <str name="spellcheck.dictionary">suggest</str>
        <str name="spellcheck.count">10</str>
    </lst>
    <arr name="components">
        <str>suggest</str>
    </arr>
</requestHandler>

真的
建议
10
建议
我的shema配置如下所示:

<field name="movie_id" type="string" indexed="true" stored="true" multiValued="false" required="true"/>
   <field name="movie_title" type="text" indexed="true" stored="true" multiValued="false" />

   <!--<field name="name_auto" type="text_auto" indexed="true" stored="true" multiValued="false" />-->
   <field name="name_autocomplete" type="text_auto" indexed="true" stored="true" multiValued="false" />

<copyField source="movie_title" dest="name_autocomplete" />

如何使用solr 4.5.1中的suggester获得其他领域?
谢谢,

嘿,你找到方法了吗?不幸的是,我没有。@aqs我已经向solr用户组发送了一封电子邮件。他们给我的回复可能会对您有所帮助。>这不是它的工作原理;建议者通过查看索引中给定字段的术语集,为您提供可能匹配的术语。你可能想看看更像这个组件或处理程序?它将返回匹配的文档,您可以从中访问所需的字段。谢谢@Omer。我就是这么想的。Suggester似乎不支持我们的用例。我现在正在考虑其他选择