У меня есть dynamicField как «pa_mydynamicfieldname» в Solr 4.0Facet запрос будет давать неправильный вывод на dynamicfield в Solr
У меня есть значение магазина в этой области, как:
Я индексировали мои данные путем кодирования с использованием системы. Web.HttpUtility.UrlEncode (pa_mydynamicfieldname) , такие как: 2.2 + ГГц + Intel Pentium + + Dual-Core E2200 +
Когда я применить фасетов запрос, чтобы получить результат, то выход, как:
<lst name="facet_fields">
<lst name="pa_mydynamicfieldname">
<int name="2.2">1</int>
<int name="2.5">1</int>
<int name="core">1</int>
<int name="dual">1</int>
<int name="e2200">1</int>
<int name="ghz">1</int>
<int name="intel">1</int>
<int name="pentium">1</int>
</lst>
Вместо этого я хочу, чтобы результат как:
<lst name="facet_fields">
<lst name="pa_mydynamicfieldname">
<int name="2.2+GHz+Intel+Pentium+Dual-Core+E2200">1</int>
</lst>
, как можно сделать это в Solr, применяя фасет запрос?
Обновлено 15 мая-13
из схемы, текстовое поле определяется следующим образом:
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
и динамические поля определяется как:
<dynamicField name="pa_*" type="text" indexed="true" stored="true" multiValued="true" required="false" />
Нам нужно как многозначное поле, поскольку документ может иметь несколько значений, определенных для каждого продукта.
Пожалуйста, помогите мне.
Благодаря
Благодарим за предложение, обновленный вопрос с дополнительной информацией. Я попробую сегодня снова с изменением типа на строку из текста и обновления здесь. Еще раз спасибо. – Herin
Основываясь на вашем обновленном вопросе, вы можете включить многозначное значение, в этом случае ключом будет строка типа. Поскольку текстовое значение является тем, что заставляет его разбиваться на несколько записей (2.2, GHZ и т. Д.) Для каждого отдельного значения. –
Спасибо, теперь он работает, изменяя тип от «text» до «string». – Herin