在SOLR中存储标签

时间:2014-01-31 23:34:22

标签: php search solr

我是SOLR的新手,我希望按标签订购搜索结果。 在SOLR文档中存储标记的最佳做法是什么?字段类型设置的最佳做法是什么?

这是我当前的方法,其中标记存储在逗号分隔列表中。搜索是针对“脚本”但这种设置似乎不会产生准确的结果:

[0] => Solarium\QueryType\Select\Result\Document Object
    (
        [fields:protected] => Array
            (
                [id] => 4912
                [description] => Neuarmy™ » YYY_NEUARMY_YES02
                [tags] => type,texture,script
                [save_date] => 1345825890
                [score] => 1.4771256
            )

    )

[1] => Solarium\QueryType\Select\Result\Document Object
    (
        [fields:protected] => Array
            (
                [id] => 1223
                [description] => Timbas Type & Logo Dept.
                [tags] => typography,logo,branding,script
                [save_date] => 1342703206
                [score] => 1.4771256
            )

    )

[2] => Solarium\QueryType\Select\Result\Document Object
    (
        [fields:protected] => Array
            (
                [id] => 1323
                [description] => ibg1pE.jpg 300×200 pixels
                [tags] => logo,script,interview magazine
                [save_date] => 1352914647
                [score] => 1.4771256
            )

    )

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

您应该选择multiValued类型的string字段。字符串字段存储没有预索引格式化的值,multiValued允许多个值。

然后为标签制作php传递数组(“排版”,“标识”,“品牌”,“脚本”)。然后索尔将认识到它们是多重价值。