Sitecore - Как искать по полю в мультисписке с поиском?

Я сделал в своем решении поле «Мультилист с поиском». Смысл этого поля в том, чтобы добавить связанные статьи к статье. Я установил источник, подобный этому:

TemplateFilter={TemplateID}&StartSearchLocation=query:/path/to/list/of/items

Я хочу выполнить поиск, который находит определенное значение поля. Например, если я хочу найти articleId в искомой статье. Есть ли встроенная поддержка для этого в Sitecore 7.2?

Можно ли сделать поиск типа articleID:706453?


person CosX    schedule 23.06.2014    source источник
comment
Вы пытались ввести «706453» прямо в поле поиска? Sitecore выполняет поиск по полю lucene «контент», которое включает все значения полей.   -  person Ahmed Okour    schedule 23.06.2014
comment
Это действительно работает! Думаю, я был недостаточно терпелив... Учил, что это будет работать с подстановочными знаками. Спасибо!   -  person CosX    schedule 24.06.2014


Ответы (1)


Я предполагаю, что это не самое простое решение, которое вы ищете, но вы можете расширить IDataSource в своем коде и использовать тип как значение в текстовом поле Source для поля, для которого вы хотите его использовать. С IDataSource вы просто возвращаете массив элементов, которые будут использоваться для вашего поля. Вы можете запросить любой элемент, который вы хотите.

См. статью Джона Уэста в блоге Sitecore: http://www.sitecore.net/nederland/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2013/09/Sitecore-7-Custom-Classes-as-Data-Template-Field-Sources.aspx

В противном случае вы можете попробовать это:

StartSearchLocation=запрос:/путь/к/списку/элементов/*[@articleID = '123']

Обратите внимание, что запросы Sitecore могут быть медленными.

person Thom Puiman    schedule 23.06.2014