Umbraco 7 Ограничение возможных значений тегов
На нашем сайте можно пометить контент списком стран. Этот список стран может быть реализован как элемент управления тегами, но я обеспокоен тем, что со временем появляется неправильное написание. Тем не менее, список стран очень длинный (более 150), поэтому он также не идеален для раскрывающегося множественного элемента управления.
То, что я хочу сделать, это иметь элемент управления, который имеет ту же функциональность типа + автозаполнение, что и существующий элемент управления тегами, но ограничивает возможные значения значениями, полученными из таблицы базы данных.
Я также хочу иметь возможность перечислять все теги, на которые была помечена часть содержимого, а также искать содержимое на основе тегов, например, GetNodesWithTags
Кто-нибудь разрабатывал что-то подобное раньше? Я посмотрел на пакеты и т.д., но не вижу ничего подобного. У кого-нибудь есть совет, прежде чем я начну?
1 ответ
Определенно, использование типа данных Tags для этого может вызвать много проблем:)
На мой взгляд, идеальным решением будет использование пакета nuPickers ( https://our.umbraco.org/projects/backoffice-extensions/nupickers/) и доступного там средства выбора TypeaheadList.
В зависимости от ваших дополнительных требований вы можете использовать исходный код Lucene / C# (полностью настраиваемый - db, static, enum и т. Д.) / XML-файл в качестве предварительных значений для вашего элемента управления.
Затем вы сможете создать логику, которая позволит вам выполнять поиск на основе этого поля, поскольку это будет типичное свойство со значением на узлах. Еще раз - предложенный способ - использовать индекс Lucene Examine, так как он предназначен для быстрого поиска. Вы можете узнать больше о поиске с помощью Examine здесь: https://our.umbraco.org/documentation/reference/searching/examine/.
Надеюсь, это решит вашу проблему.