Solr не включает поля с пустым значением в результате

Индексированные данные в Solr содержат несколько полей, которые имеют пустые значения. Когда я бегу q=*:* в него не входят поля с пустыми значениями. Какой параметр мне нужно передать при запросе, чтобы получить поля с пустыми значениями в результате.

РЕДАКТИРОВАТЬ: я индексирую данные с помощью файла CSV, записи в файле следующие:

id, dob, name
1,,name1
2,,name2

Теперь, когда я ищу топ-10 записей, я получаю только два поля. Я хочу получить все поля, даже если для этого не сохранено значение.

3 ответа

Поле должно иметь stored="true"

Перекрестная проверка в вашем файле schema.xml о dob поле. это должно быть сохранено = "истина"

<field name="dob" type="text_general" indexed="true" stored="true"/>

переиндексировать документы и запросить снова, это работает.

Надеюсь это поможет

Если элемент не имеет данных, solr не сохраняет поле. Вы должны иметь возможность принудительно хранить пустую строку, установив атрибуты поля required="True" default="".

Используя запрос добавить wt=csv и вы можете экспортировать хорошо сформированный файл CSV

Укажите требуемые поля, используя fl=

Пример:select?fl=id,foo,bar&indent=on&q=field:value&stored=true&rows=1000&start=0&wt=json

Что вы имеете в виду пустые поля? эти поля установлены как indexed=true? Вы устанавливаете пустые пробелы в качестве данных при индексации этих полей? Похоже, вы не отправляете даже пустые данные шаблона в эту переменную, поэтому это происходит. Например, если я отправляю данные в этом формате {"id":"change.me","title":" "} где мое поле заголовка пусто, оно индексируется. Но если вы попытаетесь отправить данные, подобные этим, {"id":"change.me","title":}, он отправит ошибку через solr .

Другие вопросы по тегам