0

我已经设置了 solr。我的 data-config.xml 如下所示

    <dataConfig>
    <dataSource driver="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:/temp/example/ex" user="sa" />
    <document name="products">
     <entity name="item" query="select NAME,BSIN from items">
        <field column="NAME" name="id" />
        <field column="BSIN" name="bsin" />

        <entity name="brands" query="select brandname from brand where                 bsin='${item.BSIN}'" transformer="TemplateTransformer">
            <field name="brand" column="BRAND" />
            <field name="cname" column="namedesc" template="${item.NAME}-${brands.BRAND}" />
        </entity>

       </entity>
    </document>
   </dataConfig>

bsin 和 brand 是多值字段。现在每个 NAME 都有多个 BSIN,每个 BSIN 都有一个品牌名称。我希望索引应该以这种方式发生:

Name1-Brand1 Name1-Brand2 Name2-Brand1 等。我正在使用条款组件进行自动完成。请帮助我实现这一点。

提前感谢您的帮助。问候, 帕万

4

1 回答 1

0

尝试将rootEntity="false"属性放在您的外部项目实体上。这将向 DIH 表明该文档实际上应该为内部品牌实体的每个新实例创建。

于 2014-07-12T17:42:03.873 回答